mirror of
https://github.com/strapi/strapi.git
synced 2025-12-04 19:13:20 +00:00
Merge branch 'master' into fix/findUserByProvider
This commit is contained in:
commit
015b4a5e23
@ -104,122 +104,3 @@ A plugin can have its own policies, such as adding security rules. For instance,
|
||||
```
|
||||
|
||||
Please refer to the [Policies documentation](../concepts/policies.md) for more information.
|
||||
|
||||
## ORM queries
|
||||
|
||||
Strapi supports multiple ORMs in order to let the users choose the database management system that suits their needs. Hence, each plugin must be compatible with at least one ORM. Each plugin contains a folder named `queries` in `./plugins/**/api/queries`. A file must be created for each ORM (eg. `mongoose.js` which exports the Mongoose ORM related queries).
|
||||
|
||||
The queries of a plugin are accessible through the `strapi.plugins.['pluginName'].queries('modelName', 'pluginName')` method, which automatically contains the queries according to the ORM used by the model.
|
||||
|
||||
### Example
|
||||
|
||||
Mongoose ORM queries definition:
|
||||
|
||||
**Path —** `./plugins/my-plugin/api/config/queries/mongoose.js`.
|
||||
|
||||
```js
|
||||
module.exports = () => {
|
||||
return {
|
||||
getUsers: async params => {
|
||||
return User.find(params);
|
||||
},
|
||||
};
|
||||
};
|
||||
```
|
||||
|
||||
Bookshelf ORM queries definition:
|
||||
|
||||
**Path —** `./plugins/my-plugin/api/config/queries/bookshelf.js`.
|
||||
|
||||
```js
|
||||
module.exports = () => {
|
||||
return {
|
||||
getUsers: async params => {
|
||||
return User.fetchAll(params);
|
||||
},
|
||||
};
|
||||
};
|
||||
```
|
||||
|
||||
Usage from the plugin:
|
||||
|
||||
**Path —** `./plugins/my-plugin/api/controllers/index.js`.
|
||||
|
||||
```js
|
||||
module.exports = {
|
||||
getUsers: async () => {
|
||||
// Get parameters from the request
|
||||
const { limit, sort } = ctx.request.query;
|
||||
|
||||
// Get the list of users using the plugins queries
|
||||
const users = await strapi.plugins['my-plugin']
|
||||
.queries('User', 'my-plugin')
|
||||
.getUsers({ limit, sort });
|
||||
|
||||
// Send the list of users as response
|
||||
ctx.body = users;
|
||||
},
|
||||
};
|
||||
```
|
||||
|
||||
### Advanced usage
|
||||
|
||||
Strapi injects the model in the queries when instantiating them. It means you can create reusable queries very easily.
|
||||
We use it for example in the [Content Manager plugin](https://github.com/strapi/strapi/tree/master/packages/strapi-plugin-content-manager/config/queries).
|
||||
|
||||
#### Example
|
||||
|
||||
Mongoose ORM generic queries:
|
||||
|
||||
**Path —** `./plugins/my-plugin/api/config/queries/mongoose.js`.
|
||||
|
||||
```js
|
||||
module.exports = ({ model }) => {
|
||||
return {
|
||||
getAll: async function(params) {
|
||||
// this refers to the Mongoose model called in the query
|
||||
// ex: strapi.plugins['my-plugin'].queries('Product').getAll(), this will be equal to the product Mongoose model.
|
||||
return model.find(params);
|
||||
},
|
||||
};
|
||||
};
|
||||
```
|
||||
|
||||
Bookshelf ORM generic queries:
|
||||
|
||||
**Path —** `./plugins/my-plugin/api/config/queries/bookshelf/index.js`.
|
||||
|
||||
```js
|
||||
module.exports = ({ model }) => {
|
||||
return {
|
||||
getAll: async function(params) {
|
||||
// this refers to the Bookshelf model called in the query
|
||||
// ex: strapi.plugins['my-plugin'].queries('Product').getAll(), this will be equal to the product Bookshelf model.
|
||||
return model.fetchAll(params);
|
||||
},
|
||||
};
|
||||
};
|
||||
```
|
||||
|
||||
Usage from the plugin:
|
||||
|
||||
**Path —** `./plugins/my-plugin/api/controllers/index.js`.
|
||||
|
||||
```js
|
||||
module.exports = {
|
||||
getUsers: async () => {
|
||||
// Get parameters from the request
|
||||
const { limit, sort } = ctx.request.query;
|
||||
|
||||
// Get the list of users using the plugin's queries
|
||||
const users = await strapi.plugins['my-plugin']
|
||||
.queries('User')
|
||||
.getAll({ limit, sort });
|
||||
|
||||
// Send the list of users as response
|
||||
ctx.body = users;
|
||||
},
|
||||
};
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
@ -22,6 +22,7 @@
|
||||
"app.components.BlockLink.documentation.content": "Odkryj koncepcje, odniesienia i poradniki.",
|
||||
"app.components.Button.cancel": "Anuluj",
|
||||
"app.components.Button.save": "Zapisz",
|
||||
"app.components.Button.reset": "Resetuj",
|
||||
"app.components.ComingSoonPage.comingSoon": "Wkrótce",
|
||||
"app.components.ComingSoonPage.featuresNotAvailable": "Ta funkcjonalność wciąż jest w fazie tworzenia.",
|
||||
"app.components.DownloadInfo.download": "Pobieranie w toku...",
|
||||
@ -75,8 +76,10 @@
|
||||
"app.components.LeftMenuLinkContainer.general": "Ogólne",
|
||||
"app.components.LeftMenuLinkContainer.installNewPlugin": "Sklep",
|
||||
"app.components.LeftMenuLinkContainer.listPlugins": "Wtyczki",
|
||||
"app.components.LeftMenuLinkContainer.contentTypes": "Modele",
|
||||
"app.components.LeftMenuLinkContainer.noPluginsInstalled": "Brak zainstalowanych wtyczek",
|
||||
"app.components.LeftMenuLinkContainer.plugins": "Wtyczki",
|
||||
"app.components.LeftMenuLinkContainer.settings": "Ustawienia",
|
||||
"app.components.ListPluginsPage.description": "Lista zainstalowanych wtyczek w projekcie.",
|
||||
"app.components.ListPluginsPage.helmet.title": "Lista wtyczek",
|
||||
"app.components.ListPluginsPage.title": "Wtyczki",
|
||||
@ -105,6 +108,9 @@
|
||||
"app.components.listPlugins.title.plural": "{number} wtyczek jest zainstalowanych",
|
||||
"app.components.listPlugins.title.singular": "{number} wtyczka jest zainstalowana",
|
||||
"app.components.listPluginsPage.deletePlugin.error": "Wystąpił błąd podczas dezinstalacji wtyczki",
|
||||
|
||||
"app.links.configure-view": "Skonfiguruj widok",
|
||||
|
||||
"app.utils.SelectOption.defaultMessage": " ",
|
||||
"app.utils.defaultMessage": " ",
|
||||
"app.utils.placeholder.defaultMessage": " ",
|
||||
@ -125,7 +131,9 @@
|
||||
"components.Input.error.validation.minSupMax": "Nie może być większa",
|
||||
"components.Input.error.validation.regex": "Wartość nie jest zgodna z wymaganym wzorcem.",
|
||||
"components.Input.error.validation.required": "Wpisanie wartości dla tego atrybutu jest wymagane.",
|
||||
"components.Input.error.validation.unique": "Wartość jest już użyta.",
|
||||
"components.InputSelect.option.placeholder": "Wybierz tutaj",
|
||||
"component.Input.error.validation.integer": "Wartość musi być liczbą.",
|
||||
"components.ListRow.empty": "Nie ma żadnych danych do wyświetlenia.",
|
||||
"components.OverlayBlocker.description": "Używasz funkcjonalności która wymaga ponownego uruchomienia serwera. Poczekaj proszę aż aplikacja znów będzie aktywna.",
|
||||
"components.OverlayBlocker.description.serverError": "Serwer powinien zostać zrestartowany, sprawdź swoje logi w terminalu.",
|
||||
@ -148,8 +156,8 @@
|
||||
"components.WysiwygBottomControls.fullscreen": "Rozszerz",
|
||||
"components.WysiwygBottomControls.uploadFiles": "Przeciągnij i upuść pliki, wklej ze schowka lub {browse}.",
|
||||
"components.WysiwygBottomControls.uploadFiles.browse": "je wybierz",
|
||||
"components.popUpWarning.button.cancel": "Nie",
|
||||
"components.popUpWarning.button.confirm": "Tak",
|
||||
"components.popUpWarning.button.cancel": "Anuluj",
|
||||
"components.popUpWarning.button.confirm": "Zatwierdź",
|
||||
"components.popUpWarning.message": "Czy na pewno chcesz to usunąć?",
|
||||
"components.popUpWarning.title": "Potwierdzenie",
|
||||
"notification.error": "Wystąpił błąd",
|
||||
@ -215,5 +223,40 @@
|
||||
"app.containers.App.notification.error.init": "Wystąpił błąd podczas wykonywania żądania do API",
|
||||
"components.Input.error.password.noMatch": "Hasło nie pasuje",
|
||||
"form.button.done": "Gotowe",
|
||||
"notification.form.error.fields": "Formularz zawiera błędy"
|
||||
"form.button.finish": "Zakończ",
|
||||
"global.prompt.unsaved": "Czy jeste pewien, że chcesz opuścić tę stronę? Wszystkie modyfikacje zostaną utracone",
|
||||
"notification.form.error.fields": "Formularz zawiera błędy",
|
||||
"notification.form.success.fields": "Zmiany zapisane",
|
||||
"Settings.error": "Błąd",
|
||||
"Settings.global": "Globalne Ustawienia",
|
||||
"Settings.webhooks.create": "Utwórz webhook",
|
||||
"Settings.webhooks.create.header": "Dodaj nagłówek",
|
||||
"Settings.webhooks.created": "Webhook utworzony",
|
||||
"Settings.webhooks.disabled": "Wyłączony",
|
||||
"Settings.webhooks.enabled": "Włączony",
|
||||
"Settings.webhooks.events.create": "Utwórz",
|
||||
"Settings.webhooks.events.delete": "Usuń",
|
||||
"Settings.webhooks.events.edit": "Edytuj",
|
||||
"Settings.webhooks.form.events": "Zdarzenia",
|
||||
"Settings.webhooks.form.headers": "Nagłówki",
|
||||
"Settings.webhooks.form.name": "Nazwa",
|
||||
"Settings.webhooks.form.url": "Url",
|
||||
"Settings.webhooks.key": "Klucz",
|
||||
"Settings.webhooks.list.button.add": "Dodaj nowy webhook",
|
||||
"Settings.webhooks.list.button.delete": "Usuń",
|
||||
"Settings.webhooks.list.description": "Otrzymaj notyfikacje POST o zmianach.",
|
||||
"Settings.webhooks.list.empty.description": "Dodaj pierwszy element do tej listy.",
|
||||
"Settings.webhooks.list.empty.link": "Zobacz dokumentację",
|
||||
"Settings.webhooks.list.empty.title": "Lista webhooków jest pusta",
|
||||
"Settings.webhooks.singular": "webhook",
|
||||
"Settings.webhooks.title": "Webhooki",
|
||||
"Settings.webhooks.trigger": "Wywołaj",
|
||||
"Settings.webhooks.trigger.cancel": "Anuluj wywołanie",
|
||||
"Settings.webhooks.trigger.pending": "Oczekiwanie…",
|
||||
"Settings.webhooks.trigger.save": "Zapisz do wywołania",
|
||||
"Settings.webhooks.trigger.success": "Sukces!",
|
||||
"Settings.webhooks.trigger.success.label": "Wywołanie powiodło się",
|
||||
"Settings.webhooks.trigger.test": "Wywołanie testowes",
|
||||
"Settings.webhooks.trigger.title": "Zapisz przed Wywołaniem",
|
||||
"Settings.webhooks.value": "Wartość"
|
||||
}
|
||||
|
||||
@ -2,14 +2,17 @@
|
||||
"Analytics": "分析",
|
||||
"Content Manager": "内容管理",
|
||||
"Content Type Builder": "内容类型生成器",
|
||||
"Documentation": "文档",
|
||||
"Email": "邮件",
|
||||
"HomePage.notification.newsLetter.success": "成功订阅简讯",
|
||||
"Files Upload": "文件上传",
|
||||
"HomePage.notification.newsLetter.success": "已成功订阅简讯",
|
||||
"New entry": "新入口",
|
||||
"Password": "密码",
|
||||
"Provider": "供应商",
|
||||
"ResetPasswordToken": "密码重置",
|
||||
"Role": "角色",
|
||||
"Settings Manager": "管理设置",
|
||||
"Roles & Permissions": "角色 & 权限",
|
||||
"Settings Manager": "设置管理",
|
||||
"Username": "用户名",
|
||||
"Users": "用户",
|
||||
"Users & Permissions": "用户 & 权限",
|
||||
@ -19,27 +22,29 @@
|
||||
"app.components.BlockLink.documentation.content": "发现基本概念,参考指南和教程。",
|
||||
"app.components.Button.cancel": "取消",
|
||||
"app.components.Button.save": "保存",
|
||||
"app.components.Button.reset": "重置",
|
||||
"app.components.ComingSoonPage.comingSoon": "即将推出",
|
||||
"app.components.ComingSoonPage.featuresNotAvailable": "这个功能只在活跃开发中",
|
||||
"app.components.DownloadInfo.download": "正在下载...",
|
||||
"app.components.DownloadInfo.text": "这可能需要几分钟,谢谢你的耐心。",
|
||||
"app.components.HomePage.button.blog": "在博客上看到更多",
|
||||
"app.components.EmptyAttributes.title": "还没有字段",
|
||||
"app.components.HomePage.button.blog": "在博客上查看更多",
|
||||
"app.components.HomePage.button.quickStart": "快速入门教程",
|
||||
"app.components.HomePage.community": "在网络上找到社区",
|
||||
"app.components.HomePage.community.content": "与团队成员、贡献者和开发人员在不同的渠道进行讨论。",
|
||||
"app.components.HomePage.create": "创建第一个Content Type",
|
||||
"app.components.HomePage.createBlock.content.first": "The ",
|
||||
"app.components.HomePage.createBlock.content.second": " 插件将帮助您定义模型的数据结构。如果你是刚接触Strapi,我们强烈推荐你跟随我们。 ",
|
||||
"app.components.HomePage.createBlock.content.tutorial": " tutorial.",
|
||||
"app.components.HomePage.cta": "请确认",
|
||||
"app.components.HomePage.newsLetter": "订阅Strapi简讯",
|
||||
"app.components.HomePage.create": "创建第一个 Content Type",
|
||||
"app.components.HomePage.createBlock.content.first": "这个 ",
|
||||
"app.components.HomePage.createBlock.content.second": " 插件将帮助您定义模型的数据结构。如果你是刚接触 Strapi,我们强烈建议您关注我们的 ",
|
||||
"app.components.HomePage.createBlock.content.tutorial": " 教程。",
|
||||
"app.components.HomePage.cta": "确认",
|
||||
"app.components.HomePage.newsLetter": "订阅简讯以获得有关 Strapi 的信息",
|
||||
"app.components.HomePage.support": "支持我们",
|
||||
"app.components.HomePage.support.content": "通过购买T恤来支持我们,它将允许我们继续我们的项目工作,给你最好的体验!",
|
||||
"app.components.HomePage.support.link": "现在购买T恤",
|
||||
"app.components.HomePage.welcome": "欢迎回来",
|
||||
"app.components.HomePage.welcome.again": "欢迎 ",
|
||||
"app.components.HomePage.welcomeBlock.content": "我们很高兴有你成为社区成员之一。我们一直在寻找反馈,所以可以随时给我们发送消息。 on ",
|
||||
"app.components.HomePage.welcomeBlock.content.again": "我们希望你在项目上取得进展。请随意阅读关于Strapi的最新消息。我们将尽最大努力根据您的反馈改进产品。",
|
||||
"app.components.HomePage.welcomeBlock.content": "我们很高兴有你成为社区成员之一。我们一直在寻找反馈,所以可以随时给我们发送消息到",
|
||||
"app.components.HomePage.welcomeBlock.content.again": "我们希望你在项目上取得进展。请随意阅读关于 Strapi 的最新消息。我们将尽最大努力根据您的反馈改进产品。",
|
||||
"app.components.HomePage.welcomeBlock.content.issues": "issues.",
|
||||
"app.components.HomePage.welcomeBlock.content.raise": " or raise ",
|
||||
"app.components.ImgPreview.hint": "将文件拖放到该区域或{browse}以供文件上载",
|
||||
@ -49,49 +54,67 @@
|
||||
"app.components.InputFileDetails.originalName": "原名称:",
|
||||
"app.components.InputFileDetails.remove": "删除这个文件",
|
||||
"app.components.InputFileDetails.size": "大小:",
|
||||
"app.components.InstallPluginPage.Download.title": "下载中...",
|
||||
"app.components.InstallPluginPage.Download.description": "下载并安装插件可能需要几秒钟的时间。",
|
||||
"app.components.InstallPluginPage.InputSearch.label": " ",
|
||||
"app.components.InstallPluginPage.InputSearch.placeholder": "搜索插件… (ex: authentication)",
|
||||
"app.components.InstallPluginPage.InputSearch.placeholder": "搜索插件… (例如: authentication)",
|
||||
"app.components.InstallPluginPage.description": "轻松地扩展你的应用程序。",
|
||||
"app.components.InstallPluginPage.helmet": "市场-插件",
|
||||
"app.components.InstallPluginPage.plugin.support-us.description": "通过购买Strapi T恤支持我们。这将使我们能够继续致力于这个项目,并尝试给你最好的体验!",
|
||||
"app.components.InstallPluginPage.title": "市场-插件",
|
||||
"app.components.InstallPluginPage.helmet": "市场 - 插件",
|
||||
"app.components.InstallPluginPage.plugin.support-us.description": "通过购买 Strapi T恤支持我们。这将使我们能够继续致力于这个项目,并尝试给你最好的体验!",
|
||||
"app.components.InstallPluginPage.title": "市场 - 插件",
|
||||
"app.components.InstallPluginPopup.downloads": "下载",
|
||||
"app.components.InstallPluginPopup.navLink.avis": "avis",
|
||||
"app.components.InstallPluginPopup.navLink.avis": "意见",
|
||||
"app.components.InstallPluginPopup.navLink.changelog": "更新日志",
|
||||
"app.components.InstallPluginPopup.navLink.description": "描述",
|
||||
"app.components.InstallPluginPopup.navLink.faq": "faq",
|
||||
"app.components.InstallPluginPopup.navLink.faq": "常见问题",
|
||||
"app.components.InstallPluginPopup.navLink.screenshots": "截屏",
|
||||
"app.components.InstallPluginPopup.noDescription": "没有描述",
|
||||
"app.components.LeftMenuFooter.poweredBy": "技术支持",
|
||||
"app.components.InstallPluginPopup.noDescription": "没有可用的描述",
|
||||
"app.components.LeftMenuFooter.documentation": "文档",
|
||||
"app.components.LeftMenuFooter.help": "帮助",
|
||||
"app.components.LeftMenuFooter.poweredBy": "技术支持 ",
|
||||
"app.components.LeftMenuLinkContainer.configuration": "配置",
|
||||
"app.components.LeftMenuLinkContainer.general": "一般",
|
||||
"app.components.LeftMenuLinkContainer.general": "常规",
|
||||
"app.components.LeftMenuLinkContainer.installNewPlugin": "市场",
|
||||
"app.components.LeftMenuLinkContainer.listPlugins": "插件",
|
||||
"app.components.LeftMenuLinkContainer.contentTypes": "Content Types",
|
||||
"app.components.LeftMenuLinkContainer.noPluginsInstalled": "还没有安装插件",
|
||||
"app.components.LeftMenuLinkContainer.plugins": "插件",
|
||||
"app.components.LeftMenuLinkContainer.settings": "设置",
|
||||
"app.components.ListPluginsPage.description": "项目中已安装的插件列表",
|
||||
"app.components.ListPluginsPage.helmet.title": "插件列表",
|
||||
"app.components.ListPluginsPage.title": "插件",
|
||||
"app.components.Logout.profile": "轮廓",
|
||||
"app.components.Logout.admin": "管理员管理",
|
||||
"app.components.Logout.profile": "个人资料",
|
||||
"app.components.Logout.logout": "登出",
|
||||
"app.components.NotFoundPage.back": "返回主页",
|
||||
"app.components.NotFoundPage.description": "没有找到",
|
||||
"app.components.Official": "官方",
|
||||
"app.components.Onboarding.label.completed": "% 已完成",
|
||||
"app.components.Onboarding.title": "入门视频",
|
||||
"app.components.PluginCard.Button.label.download": "下载",
|
||||
"app.components.PluginCard.Button.label.install": "已下载",
|
||||
"app.components.PluginCard.Button.label.support": "支持我们",
|
||||
"app.components.PluginCard.compatible": "与你的应用程序兼容",
|
||||
"app.components.PluginCard.compatibleCommunity": "与社区兼容",
|
||||
"app.components.PluginCard.more-details": "更多细节",
|
||||
"app.components.PluginCard.PopUpWarning.install.impossible.autoReload.needed": "需要启用自动重载功能。请使用 `yarn develop` 来启动您的应用。",
|
||||
"app.components.PluginCard.PopUpWarning.install.impossible.environment": "出于安全原因,插件只能在开发环境中下载。",
|
||||
"app.components.PluginCard.PopUpWarning.install.impossible.confirm": "我明白!",
|
||||
"app.components.PluginCard.PopUpWarning.install.impossible.title": "无法下载",
|
||||
"app.components.PluginCard.price.free": "免费",
|
||||
"app.components.PluginCard.settings": "设置",
|
||||
"app.components.listPlugins.button": "增加新插件",
|
||||
"app.components.listPlugins.title.none": "还没有安装插件",
|
||||
"app.components.listPlugins.title.plural": "{number} 个插件已安装",
|
||||
"app.components.listPlugins.title.singular": "{number} 个插件已安装",
|
||||
"app.components.listPluginsPage.deletePlugin.error": "卸载插件时出错",
|
||||
|
||||
"app.links.configure-view": "配置视图",
|
||||
|
||||
"app.utils.SelectOption.defaultMessage": " ",
|
||||
"app.utils.defaultMessage": " ",
|
||||
"app.utils.placeholder.defaultMessage": " ",
|
||||
"components.AutoReloadBlocker.description": "使用以下命令中的一个来运行 Strapi:",
|
||||
"components.AutoReloadBlocker.header": "这个插件需要重新加载特性。",
|
||||
"components.ErrorBoundary.title": "哪里出问题了…",
|
||||
"components.Input.error.attribute.key.taken": "此值已经存在",
|
||||
@ -100,6 +123,7 @@
|
||||
"components.Input.error.contentTypeName.taken": "此名称已经存在",
|
||||
"components.Input.error.custom-error": "{errorMessage} ",
|
||||
"components.Input.error.validation.email": "这不是电子邮件",
|
||||
"components.Input.error.validation.json": "JSON 格式匹配错误",
|
||||
"components.Input.error.validation.max": "超过最大值",
|
||||
"components.Input.error.validation.maxLength": "超过最大长度",
|
||||
"components.Input.error.validation.min": "低于最小值",
|
||||
@ -107,23 +131,28 @@
|
||||
"components.Input.error.validation.minSupMax": "最小值超过最大值了",
|
||||
"components.Input.error.validation.regex": "格式不正确",
|
||||
"components.Input.error.validation.required": "这个值是必须的",
|
||||
"components.Input.error.validation.unique": "该值已经被使用。",
|
||||
"components.InputSelect.option.placeholder": "选择",
|
||||
"component.Input.error.validation.integer": "该值必须是整数",
|
||||
"components.ListRow.empty": "没有要显示的数据",
|
||||
"components.OverlayBlocker.description": "这个功能成需要服务器重新启动。请等到服务器启动。",
|
||||
"components.OverlayBlocker.description": "您正在使用一个需要服务器重新启动的特性,请等待服务器启动。",
|
||||
"components.OverlayBlocker.description.serverError": "服务器应该已经重新启动,请在终端中检查您的日志。",
|
||||
"components.OverlayBlocker.title": "等待重新启动...",
|
||||
"components.OverlayBlocker.title.serverError": "重启时间长于预期",
|
||||
"components.PageFooter.select": "每页条目",
|
||||
"components.ProductionBlocker.description": "为了安全起见,我们必须在其他环境中禁用这个插件。",
|
||||
"components.ProductionBlocker.header": "这个插件只能在开发中使用。",
|
||||
"components.Wysiwyg.ToggleMode.markdown": "编辑",
|
||||
"components.Wysiwyg.ToggleMode.preview": "预览",
|
||||
"components.Wysiwyg.collapse": "折叠",
|
||||
"components.Wysiwyg.selectOptions.H1": "Title H1",
|
||||
"components.Wysiwyg.selectOptions.H2": "Title H2",
|
||||
"components.Wysiwyg.selectOptions.H3": "Title H3",
|
||||
"components.Wysiwyg.selectOptions.H4": "Title H4",
|
||||
"components.Wysiwyg.selectOptions.H5": "Title H5",
|
||||
"components.Wysiwyg.selectOptions.H6": "Title H6",
|
||||
"components.Wysiwyg.selectOptions.H1": "H1 标题",
|
||||
"components.Wysiwyg.selectOptions.H2": "H2 标题",
|
||||
"components.Wysiwyg.selectOptions.H3": "H3 标题",
|
||||
"components.Wysiwyg.selectOptions.H4": "H4 标题",
|
||||
"components.Wysiwyg.selectOptions.H5": "H5 标题",
|
||||
"components.Wysiwyg.selectOptions.H6": "H6 标题",
|
||||
"components.Wysiwyg.selectOptions.title": "增加一个标题",
|
||||
"components.WysiwygBottomControls.charactersIndicators": "characters",
|
||||
"components.WysiwygBottomControls.charactersIndicators": "人物",
|
||||
"components.WysiwygBottomControls.fullscreen": "最大化",
|
||||
"components.WysiwygBottomControls.uploadFiles": "拖放文件,从剪贴板粘贴或 {browse}.",
|
||||
"components.WysiwygBottomControls.uploadFiles.browse": "从文件夹选取",
|
||||
@ -134,14 +163,27 @@
|
||||
"notification.error": "发生了一个错误",
|
||||
"notification.error.layout": "无法获取布局",
|
||||
"request.error.model.unknown": "这个模型已不存在",
|
||||
"app.utils.delete": "删除",
|
||||
"HomePage.helmet.title": "主页",
|
||||
"HomePage.welcome.congrats": "恭喜!",
|
||||
"HomePage.welcome.congrats.content": "您是第一位以管理员身份登录的用户,去发现 Strapi 提供的强大功能吧,",
|
||||
"HomePage.welcome.congrats.content.bold": "我们建议您创建第一个 Content-Type。",
|
||||
"HomePage.community": "加入社区",
|
||||
"HomePage.roadmap": "查看我们的路线图",
|
||||
"HomePage.greetings": "您好 {name}!",
|
||||
|
||||
"Auth.advanced.allow_register": "",
|
||||
"Auth.privacy-policy-agreement.terms": "条款",
|
||||
"Auth.privacy-policy-agreement.policy": "隐私政策",
|
||||
"Auth.form.button.forgot-password": "发送电子邮件",
|
||||
"Auth.form.button.forgot-password.success": "再次发送",
|
||||
"Auth.form.button.login": "登录",
|
||||
"Auth.form.button.register": "准备开始",
|
||||
"Auth.form.button.register-success": "再次发送",
|
||||
"Auth.form.button.reset-password": "修改密码",
|
||||
"Auth.form.error.blocked": "您的帐户已被管理员禁用。",
|
||||
"Auth.form.error.code.provide": "提供代码的代码不正确。",
|
||||
"Auth.form.error.confirmed": "您的帐户电子邮件还未得到确认。",
|
||||
"Auth.form.error.email.invalid": "此电子邮件无效。",
|
||||
"Auth.form.error.email.provide": "请提供您的用户名或电子邮件。",
|
||||
"Auth.form.error.email.taken": "邮箱已被使用",
|
||||
@ -152,6 +194,7 @@
|
||||
"Auth.form.error.password.local": "此用户从未设置本地密码,请通过帐户创建过程中使用的第三方供应商登录。",
|
||||
"Auth.form.error.password.matching": "密码不匹配。",
|
||||
"Auth.form.error.password.provide": "请提供您的密码。",
|
||||
"Auth.form.error.ratelimit": "您尝试的次数过多,请稍后再试。",
|
||||
"Auth.form.error.user.not-exist": "此电子邮件不存在。",
|
||||
"Auth.form.error.username.taken": "用户名已被使用",
|
||||
"Auth.form.forgot-password.email.label": "输入你的电子邮件",
|
||||
@ -170,12 +213,50 @@
|
||||
"Auth.form.register.confirmPassword.label": "确认密码",
|
||||
"Auth.form.register.email.label": "邮箱",
|
||||
"Auth.form.register.email.placeholder": "johndoe@gmail.com",
|
||||
|
||||
"Auth.form.register.news.label": "让我随时了解新功能和即将进行的改进(如果要这样做,您需要接受 {terms} 和 {policy} )。",
|
||||
"Auth.form.register.password.label": "密码",
|
||||
"Auth.form.register.username.label": "用户名",
|
||||
"Auth.form.register.username.placeholder": "John Doe",
|
||||
"Auth.header.register.description": "要完成安装并保护您的应用程序,请通过输入必要的信息来创建第一个用户(root管理员)。",
|
||||
"Auth.link.forgot-password": "忘记密码了吗?",
|
||||
"Auth.link.ready": "准备好登录?",
|
||||
"components.Input.error.password.noMatch": "密码不匹配"
|
||||
"Settings.global": "全局设置",
|
||||
"Settings.error": "错误",
|
||||
"Settings.webhooks.title": "Webhooks",
|
||||
"Settings.webhooks.singular": "webhook",
|
||||
"Settings.webhooks.list.description": "获取 POST 更改通知。",
|
||||
"Settings.webhooks.list.button.add": "添加新的 webhook",
|
||||
"Settings.webhooks.list.button.delete": "删除",
|
||||
"Settings.webhooks.list.empty.title": "目前还没有 webhook",
|
||||
"Settings.webhooks.list.empty.description": "添加你的第一个 webhook 到该列表吧!",
|
||||
"Settings.webhooks.list.empty.link": "查看我们的文档",
|
||||
"Settings.webhooks.enabled": "已启用",
|
||||
"Settings.webhooks.disabled": "已禁用",
|
||||
"Settings.webhooks.create": "创建一个 webhook",
|
||||
"Settings.webhooks.create.header": "添加",
|
||||
"Settings.webhooks.form.name": "名称",
|
||||
"Settings.webhooks.form.url": "请求地址",
|
||||
"Settings.webhooks.form.headers": "请求头",
|
||||
"Settings.webhooks.form.events": "事件",
|
||||
"Settings.webhooks.key": "键",
|
||||
"Settings.webhooks.value": "值",
|
||||
"Settings.webhooks.trigger": "触发",
|
||||
"Settings.webhooks.trigger.title": "触发前保存",
|
||||
"Settings.webhooks.trigger.cancel": "取消触发",
|
||||
"Settings.webhooks.trigger.pending": "等待中...",
|
||||
"Settings.webhooks.trigger.success": "成功!",
|
||||
"Settings.webhooks.trigger.success.label": "触发成功",
|
||||
"Settings.webhooks.trigger.save": "请保存再触发",
|
||||
"Settings.webhooks.trigger.test": "触发测试",
|
||||
"Settings.webhooks.events.create": "创建",
|
||||
"Settings.webhooks.events.edit": "编辑",
|
||||
"Settings.webhooks.events.delete": "删除",
|
||||
"Settings.webhooks.created": "Webhook 已创建",
|
||||
"app.containers.App.notification.error.init": "请求 API 时发生错误",
|
||||
"components.Input.error.password.noMatch": "密码不匹配",
|
||||
"form.button.done": "完成",
|
||||
"form.button.finish": "结束",
|
||||
"notification.form.error.fields": "表单包含一些错误",
|
||||
"notification.form.success.fields": "修改已保存",
|
||||
"global.prompt.unsaved": "你确定要离开这个页面吗?你所有的修改都会丢失!"
|
||||
}
|
||||
|
||||
@ -3,23 +3,37 @@
|
||||
"components.AddFilterCTA.add": "Filtry",
|
||||
"components.AddFilterCTA.hide": "Filtry",
|
||||
"components.DraggableAttr.edit": "Kliknij by edytować",
|
||||
"components.DynamicZone.add-compo": "Dodaj do {componentName}",
|
||||
"components.DynamicZone.missing.plural": "Brakuje {count} komponentów",
|
||||
"components.DynamicZone.missing.singular": "Brakuje {count} komponentu",
|
||||
"components.DynamicZone.pick-compo": "Wybierz jeden komponent",
|
||||
"components.empty-repeatable": "Jeszcze nie ma wpisu. Kliknij przycisk poniżej, aby go dodać.",
|
||||
"components.EmptyAttributesBlock.button": "Przejdź do ustawień",
|
||||
"components.EmptyAttributesBlock.description": "Możesz zmienić ustawienia",
|
||||
"components.FieldItem.linkToComponentLayout": "Ustaw układ komponentu",
|
||||
"components.FilterOptions.FILTER_TYPES.=": "jest identyczne z",
|
||||
"components.FilterOptions.FILTER_TYPES._contains": "zawiera",
|
||||
"components.FilterOptions.FILTER_TYPES._containss": "zawiera (rozróżnianie wielkości liter)",
|
||||
"components.FilterOptions.FILTER_TYPES._gt": "jest większe od",
|
||||
"components.FilterOptions.FILTER_TYPES._gte": "jest większe od lub równe",
|
||||
"components.FilterOptions.FILTER_TYPES._in": "dopasuj jakąkolwiek wartość z tablicy wartości",
|
||||
"components.FilterOptions.FILTER_TYPES._lt": "jest mniejsze od",
|
||||
"components.FilterOptions.FILTER_TYPES._lte": "jest mniejsze od lub równe",
|
||||
"components.FilterOptions.FILTER_TYPES._ne": "jest różne od",
|
||||
"components.FilterOptions.FILTER_TYPES._nin": "nie znaleziono pasującej wartości w tablicy wartości",
|
||||
"components.FilterOptions.button.apply": "Zastosuj",
|
||||
"components.FiltersPickWrapper.PluginHeader.actions.apply": "Zastosuj",
|
||||
"components.FiltersPickWrapper.PluginHeader.actions.clearAll": "Wyczyść",
|
||||
"components.FiltersPickWrapper.PluginHeader.description": "Ustawianie warunków filtrowania elementów.",
|
||||
"components.FiltersPickWrapper.PluginHeader.title.filter": "Filtry",
|
||||
"components.FiltersPickWrapper.hide": "Ukryj",
|
||||
"components.notification.info.maximum-requirement": "Osiągięto maksymalną liczbę pól",
|
||||
"components.notification.info.minimum-requirement": "Dodano pole spełniające minimalne wymagania",
|
||||
"components.reset-entry": "Zresetuj wpis",
|
||||
"components.LimitSelect.itemsPerPage": "Elementów na stronę",
|
||||
"components.SettingsViewWrapper.pluginHeader.description.edit-settings": "Dostosuj wygląd widoku edycji.",
|
||||
"components.SettingsViewWrapper.pluginHeader.description.list-settings": "Zdefiniuj ustawienia widoku listy.",
|
||||
"components.SettingsViewWrapper.pluginHeader.title": "Skonfiguruj widok - {name}",
|
||||
"components.Search.placeholder": "Szukaj elementu...",
|
||||
"components.TableDelete.delete": "Usuń",
|
||||
"components.TableDelete.deleteSelected": "Usuń zaznaczone",
|
||||
@ -32,10 +46,19 @@
|
||||
"containers.Edit.clickToJump": "Kliknij aby przejść do elementu",
|
||||
"containers.Edit.delete": "Usuń",
|
||||
"containers.Edit.editing": "Edytowanie...",
|
||||
"containers.Edit.Link.Fields": "Edytuj pola",
|
||||
"containers.Edit.Link.Layout": "Skonfiguruj układ",
|
||||
"containers.Edit.Link.Model": "Edytuj Model",
|
||||
"containers.Edit.pluginHeader.title.new": "Utwórz wpis",
|
||||
"containers.Edit.reset": "Wyczyść",
|
||||
"containers.Edit.returnList": "Wróć do listy",
|
||||
"containers.Edit.seeDetails": "Szczegóły",
|
||||
"containers.Edit.submit": "Zapisz",
|
||||
"containers.EditSettingsView.modal-form.edit-field": "Edytuj pole",
|
||||
"containers.EditView.add.new": "DODAJ NOWY WPIS",
|
||||
"containers.EditView.components.missing.plural": "Brakuje {count} komponentów",
|
||||
"containers.EditView.components.missing.singular": "Brakuje {count} komponentu",
|
||||
"containers.EditView.notification.errors": "Formularz zawiera błędy",
|
||||
"containers.Home.introduction": "Aby edytować wpisy przejdź do odpowiedniego linku w menu po lewej. Ta wtyczka nie ma odpowiedniego sposobu na edytowanie ustawień i nadal jest w trakcie rozwijania.",
|
||||
"containers.Home.pluginHeaderDescription": "Zarządzaj swoimi danymi za pomocą potężnego i pięknego interfejsu.",
|
||||
"containers.Home.pluginHeaderTitle": "Treści",
|
||||
@ -44,21 +67,32 @@
|
||||
"containers.List.pluginHeaderDescription": "{label} elementów znalezionych",
|
||||
"containers.List.pluginHeaderDescription.singular": "{label} element znaleziony",
|
||||
"containers.ListPage.displayedFields": "Wyświetlone atrybuty",
|
||||
"containers.ListSettingsView.modal-form.edit-label": "Edytuj etykietę",
|
||||
"containers.SettingPage.add.field": "Wstaw inne pole",
|
||||
"containers.SettingPage.add.relational-field": "Wstaw inne pole relacyjne",
|
||||
"containers.SettingPage.attributes.description": "Zdefiniuj kolejność atrybutów",
|
||||
"containers.SettingPage.listSettings.title": "Lista (ustawienia)",
|
||||
"containers.SettingPage.editSettings.entry.title": "Tytuł wpisu",
|
||||
"containers.SettingPage.editSettings.entry.title.description": "Ustaw wyświetlane pole swojego wpisu",
|
||||
"containers.SettingsPage.Block.generalSettings.title": "Ogólne",
|
||||
"containers.SettingPage.layout": "Układ",
|
||||
"containers.SettingPage.addField": "Dodaj nowy atrybut",
|
||||
"containers.SettingPage.editSettings.description": "Przeciągnij i upuś pola by zbudować układ",
|
||||
"containers.SettingPage.editSettings.title": "Edycja (ustawienia)",
|
||||
"containers.SettingPage.relations": "Pola relacyjne",
|
||||
"containers.SettingPage.addRelationalField": "Dodaj nowe pola relacyjne",
|
||||
"containers.SettingPage.settings": "Ustawienia",
|
||||
"containers.SettingPage.view": "Widok",
|
||||
"containers.SettingPage.attributes": "Pola atrybutów",
|
||||
"containers.SettingPage.listSettings.description": "Skonfiguruj opcje dla tego typu zawartości",
|
||||
"containers.SettingPage.pluginHeaderDescription": "Skonfiguruj specificzne ustawienia tego Typu Zawartości",
|
||||
"containers.SettingPage.listSettings.description": "Skonfiguruj opcje dla tego modelu",
|
||||
"containers.SettingPage.pluginHeaderDescription": "Skonfiguruj specificzne ustawienia tego modelu",
|
||||
"containers.SettingsPage.Block.contentType.description": "Skonfiguruj specyficzne ustawienia",
|
||||
"containers.SettingsPage.Block.contentType.title": "Typy zawartości",
|
||||
"containers.SettingsPage.Block.generalSettings.description": "Skonfiguruj domyślne opcje twoich Typów Zawartości",
|
||||
"containers.SettingsPage.pluginHeaderDescription": "Skonfiguruj domyślne opcje wszystkich twoich Typów Zawartości",
|
||||
"containers.SettingsView.list.subtitle": "Skonfiguruj układ i wyświetlanie modeli i grup",
|
||||
"containers.SettingsView.list.title": "Wyświetl konfiguracje ",
|
||||
"containers.SettingViewModel.pluginHeader.title": "Menedżer treści - {name}",
|
||||
"containers.SettingsPage.Block.contentType.title": "Modele",
|
||||
"containers.SettingsPage.Block.generalSettings.description": "Skonfiguruj domyślne opcje twoich modeli",
|
||||
"containers.SettingsPage.pluginHeaderDescription": "Skonfiguruj domyślne opcje wszystkich twoich modeli",
|
||||
"emptyAttributes.button": "Przejdź do konstruktora modeli",
|
||||
"emptyAttributes.description": "Dodaj swoje pierwszy atrybut do modelu",
|
||||
"emptyAttributes.title": "Nie ma jeszcze żadnych atrybutów",
|
||||
@ -93,11 +127,19 @@
|
||||
"form.Input.filters": "Włącz filtry",
|
||||
"form.Input.label.inputDescription": "Ta wartość nadpisuje etykietę wyświetlaną w nagłówku tabeli",
|
||||
"form.Input.pageEntries": "Wpisy per strona",
|
||||
"form.Input.pageEntries.inputDescription": "Uwaga: Możesz zmienić tę wartość na stronie ustawień Typów Zawartości.",
|
||||
"form.Input.pageEntries.inputDescription": "Uwaga: Możesz zmienić tę wartość na stronie ustawień modeli.",
|
||||
"form.Input.search": "Włącz wyszukiwanie",
|
||||
"form.Input.search.field": "Włącz wyszukiwanie po tym polu",
|
||||
"form.Input.sort.field": "Włącz sortowanie po tym polu",
|
||||
"form.Input.wysiwyg": "Wyświetl jako edytor WYSIWYG",
|
||||
"global.displayedFields": "Wyświetlane pola",
|
||||
"groups": "Groupy",
|
||||
"groups.numbered": "Groupy ({number})",
|
||||
"models": "Modele",
|
||||
"models.numbered": "Modele ({number})",
|
||||
"notification.error.relationship.fetch": "Wystąpił błąd podczas pobierania relacji.",
|
||||
"notification.info.minimumFields": "Musisz wyświetlić przynajmniej jedno pole",
|
||||
"notification.upload.error": "Wystąpił bład podczas przesyłania plików",
|
||||
"pageNotFound": "Strona nie znaleziona",
|
||||
"plugin.description.long": "Szybki sposób na przeglądanie, zmianę i usuwanie elementów z twojej bazy danych.",
|
||||
"plugin.description.short": "Szybki sposób na przeglądanie, zmianę i usuwanie elementów z twojej bazy danych.",
|
||||
|
||||
@ -1,15 +1,19 @@
|
||||
{
|
||||
"models": "内容类型",
|
||||
"models.numbered": "内容类型({number})",
|
||||
"models": "Content Types",
|
||||
"models.numbered": "Content Types ({number})",
|
||||
"groups": "分组",
|
||||
"groups.numbered": "分组 ({number})",
|
||||
"EditRelations.title": "关联数据",
|
||||
"components.AddFilterCTA.add": "过滤器",
|
||||
"components.AddFilterCTA.hide": "过滤器",
|
||||
"components.DraggableAttr.edit": "点击以编辑",
|
||||
"components.DynamicZone.add-compo": "添加到 {componentName}",
|
||||
"components.DynamicZone.pick-compo": "选择一个组件",
|
||||
"components.DynamicZone.missing.singular": "有 {count} 个缺少的组件",
|
||||
"components.DynamicZone.missing.plural": "有 {count} 个缺少的组件",
|
||||
"components.EmptyAttributesBlock.button": "前往设置页面",
|
||||
"components.EmptyAttributesBlock.description": "您可以更改设置",
|
||||
|
||||
"components.FieldItem.linkToComponentLayout": "设置组件的布局",
|
||||
"components.FilterOptions.FILTER_TYPES.=": "等于",
|
||||
"components.FilterOptions.FILTER_TYPES._contains": "包含",
|
||||
"components.FilterOptions.FILTER_TYPES._containss": "包含(区分大小写)",
|
||||
@ -32,6 +36,11 @@
|
||||
"components.reset-entry": "重置实体",
|
||||
"components.LimitSelect.itemsPerPage": "每页显示数目",
|
||||
"components.Search.placeholder": "搜索...",
|
||||
|
||||
"components.SettingsViewWrapper.pluginHeader.title": "配置视图 - {name}",
|
||||
"components.SettingsViewWrapper.pluginHeader.description.edit-settings": "自定义编辑视图的外观。",
|
||||
"components.SettingsViewWrapper.pluginHeader.description.list-settings": "定义列表视图的设置。",
|
||||
|
||||
"components.TableDelete.delete": "刪除",
|
||||
"components.TableDelete.deleteSelected": "删除所选",
|
||||
"components.TableDelete.entries.plural": "已选取 {number} 个条目",
|
||||
@ -51,17 +60,23 @@
|
||||
"containers.Edit.submit": "保存",
|
||||
"containers.Edit.Link.Layout": "编辑布局",
|
||||
"containers.Edit.Link.Fields": "编辑字段",
|
||||
"containers.Edit.Link.Model": "编辑这个 Content Type",
|
||||
"containers.EditView.notification.errors": "表单包含一些错误",
|
||||
"containers.Home.introduction": "要编辑您的条目,请转到左边菜单中的特定链接。这个插件没有合适的方法来编辑设置,它仍然在积极的开发中。",
|
||||
"containers.Home.pluginHeaderDescription": "通过一个强大而漂亮的界面管理你的条目。",
|
||||
"containers.Home.pluginHeaderTitle": "内容管理器",
|
||||
|
||||
"containers.List.addAnEntry": "增加新的 {entity}",
|
||||
"containers.List.errorFetchRecords": "错误",
|
||||
"containers.List.pluginHeaderDescription": "找到 {label} 条目",
|
||||
"containers.List.pluginHeaderDescription.singular": "找到 {label} 条目",
|
||||
"containers.ListPage.displayedFields": "显示字段",
|
||||
"containers.SettingPage.addField": "新增字段",
|
||||
"containers.SettingPage.addRelationalField": "新增关联字段",
|
||||
|
||||
"containers.ListSettingsView.modal-form.edit-label": "编辑标签",
|
||||
"containers.EditSettingsView.modal-form.edit-field": "编辑字段",
|
||||
|
||||
"containers.SettingPage.add.field": "新增字段",
|
||||
"containers.SettingPage.add.relational-field": "新增关联字段",
|
||||
"containers.SettingPage.attributes": "属性",
|
||||
"containers.SettingPage.attributes.description": "调整字段的顺序",
|
||||
"containers.SettingPage.editSettings.description": "拖拽字段来布局",
|
||||
@ -74,7 +89,10 @@
|
||||
"containers.SettingPage.relations": "关联字段",
|
||||
"containers.SettingPage.settings": "设置",
|
||||
"containers.SettingPage.layout": "布局",
|
||||
"containers.SettingPage.view": "视图",
|
||||
"containers.EditView.add.new": "新增一个实体",
|
||||
"containers.EditView.components.missing.singular": "有 {count} 个缺少的组件",
|
||||
"containers.EditView.components.missing.plural": "有 {count} 个缺少的组件",
|
||||
"containers.SettingViewModel.pluginHeader.title": "内容管理 - {name}",
|
||||
"containers.SettingsPage.Block.contentType.description": "调整指定内容类型的的字段",
|
||||
"containers.SettingsPage.Block.contentType.title": "内容类型",
|
||||
@ -96,10 +114,10 @@
|
||||
"error.record.delete": "删除记录时发生错误",
|
||||
"error.record.fetch": "获取记录时发生错误。",
|
||||
"error.record.update": "更新记录时发生错误",
|
||||
"error.records.count": "获取记录数count时发生错误。",
|
||||
"error.records.count": "获取计数记录期间发生错误。",
|
||||
"error.records.fetch": "获取记录时发生错误。",
|
||||
"error.schema.generation": "Schema生成过程中发生错误。",
|
||||
"error.validation.json": "非法的JSON格式",
|
||||
"error.schema.generation": "Schema 生成过程中发生错误。",
|
||||
"error.validation.json": "非法的 JSON 格式",
|
||||
"error.validation.max": "超过最大值",
|
||||
"error.validation.maxLength": "长度太长",
|
||||
"error.validation.min": "小于最小值",
|
||||
@ -140,8 +158,8 @@
|
||||
"popUpWarning.title": "请确认",
|
||||
"popUpWarning.warning.cancelAllSettings": "您确定要放弃修改?",
|
||||
"popUpWarning.warning.updateAllSettings": "这会修改您的设置",
|
||||
"success.record.delete": "删除",
|
||||
"success.record.save": "保存",
|
||||
"success.record.delete": "已删除",
|
||||
"success.record.save": "已保存",
|
||||
"notification.info.minimumFields": "您至少需要显示一个字段",
|
||||
"notification.upload.error": "上传文件时发生了错误"
|
||||
}
|
||||
|
||||
@ -47,5 +47,107 @@
|
||||
"relation.manyToOne": "zawiera wiele",
|
||||
"relation.oneToMany": "należy do wielu",
|
||||
"relation.oneToOne": "zawiera i należy do",
|
||||
"relation.oneWay": "zawiera"
|
||||
"relation.oneWay": "zawiera",
|
||||
"attribute.boolean.description": "Tak lub nie, 1 lub 0, true lub false",
|
||||
"attribute.component": "Komponent",
|
||||
"attribute.component.description": "Grupa pól, które można powtarzać lub używać ponownie",
|
||||
"attribute.date.description": "Wybór daty z godzinami, minutami i sekundami",
|
||||
"attribute.datetime": "Data i godzina",
|
||||
"attribute.dynamiczone": "Strefa dynamiczna",
|
||||
"attribute.dynamiczone.description": "Dynamicznie wybierz komponent podczas edycji treści",
|
||||
"attribute.email.description": "Pole email ze sprawdzaniem poprawno",
|
||||
"attribute.enumeration.description": "Lista wartości do jednokrotnego wyboru",
|
||||
"attribute.json.description": "Dane w formacie JSON",
|
||||
"attribute.media.description": "Pliki jak obrazki, filmy, itp.",
|
||||
"attribute.null": " ",
|
||||
"attribute.number": "Numer",
|
||||
"attribute.number.description": "Numery (liczba całkowita, liczba zmiennoprzecinkowa, dziesiętna)",
|
||||
"attribute.password.description": "Pole hasła z szyfrowaniem",
|
||||
"attribute.relation.description": "Odnośnik do innego modelu",
|
||||
"attribute.richtext": "Tekst sformatowany",
|
||||
"attribute.richtext.description": "Edytor tekstu z możliwością formatowania",
|
||||
"attribute.text.description": "Krótki lub długi tekst jak tytuł lub opis",
|
||||
"attribute.time": "Czas",
|
||||
"attribute.uid": "Uuid",
|
||||
"attribute.uid.description": "Unikalny identyfikator",
|
||||
"button.attributes.add.another": "Dodaj kolejne pole",
|
||||
"button.component.add": "Dodaj komponent",
|
||||
"button.component.create": "Utwórz komponent",
|
||||
"button.model.create": "Utwórz nowy typ zawartości",
|
||||
"components.componentSelect.no-component-available": "Dodałeś już wszystkie swoje komponenty",
|
||||
"components.componentSelect.no-component-available.with-search": "Brak elementów pasujących do Twojego wyszukiwania",
|
||||
"components.componentSelect.value-component": "{number} wybrany komponent (wpisz, aby wyszukać komponent)",
|
||||
"components.componentSelect.value-components": "{number} wybranych komponentów",
|
||||
"component.repeatable": "(powtarzalne)",
|
||||
"configurations": "konfiguracje",
|
||||
"contentType.UID.description": "UID służy do generowania ścieżek API i tabel/kolekcji baz danych",
|
||||
"contentType.collectionName.description": "Przydatne, gdy nazwa typu zawartości i nazwa tabeli różnią się",
|
||||
"contentType.collectionName.label": "Nazwa kolekcji",
|
||||
"contentType.displayName.label": "Wyświetlana nazwa",
|
||||
"error.contentTypeName.reserved-name": "Ta nazwa nie może być używana w Twoim projekcie, ponieważ może uszkodzić inne funkcje",
|
||||
"error.validation.minSupMax": "Nie może być wyższy",
|
||||
"form.attribute.component.option.add": "Dodaj komponent",
|
||||
"form.attribute.component.option.create": "Utwórz nowy komponent",
|
||||
"form.attribute.component.option.create.description": "Komponent jest współużytkowany przez typy i komponenty, będzie dostępny i dostępny wszędzie.",
|
||||
"form.attribute.component.option.repeatable": "Powtarzalny komponent",
|
||||
"form.attribute.component.option.repeatable.description": "Najlepsze dla wielu wystąpień (tablicy) np. składników, metatagów itp.",
|
||||
"form.attribute.component.option.reuse-existing": "Użyj istniejącego komponentu",
|
||||
"form.attribute.component.option.reuse-existing.description": "Ponownie użyj utworzonego już komponentu, aby zachować spójność danych między typami treści.",
|
||||
"form.attribute.component.option.single": "Pojedynczy komponent",
|
||||
"form.attribute.component.option.single.description": "Najlepsze do grupowania pól takich jak pełny adres, główne informacje itp.",
|
||||
"form.attribute.item.date.type.date": "data",
|
||||
"form.attribute.item.date.type.datetime": "data i czas",
|
||||
"form.attribute.item.date.type.time": "czas",
|
||||
"form.attribute.item.number.type.biginteger": "duża liczba całkowita (np. 123456789)",
|
||||
"form.attribute.item.privateField": "Pole prywatne",
|
||||
"form.attribute.item.privateField.description": "To pole nie pojawi się w odpowiedzi interfejsu API",
|
||||
"form.attribute.media.option.multiple": "Wiele mediów",
|
||||
"form.attribute.media.option.multiple.description": "Najlepsze dla suwaków, karuzeli lub pobierania wielu plików",
|
||||
"form.attribute.media.option.single": "Pojedyncze media",
|
||||
"form.attribute.media.option.single.description": "Najlepsze dla awatara, zdjęcia profilowego lub okładki",
|
||||
"form.attribute.text.option.long-text": "Długi tekst",
|
||||
"form.attribute.text.option.long-text.description": "Najlepsze dla opisów, biografii.
Dokładne wyszukiwanie jest wyłączone.",
|
||||
"form.attribute.text.option.short-text": "Krótki tekst",
|
||||
"form.attribute.text.option.short-text.description": "Najlepsze dla tytułów, nazw, linków (URL). Umożliwia także dokładne wyszukiwanie dla pola.",
|
||||
"form.button.add-components-to-dynamiczone": "Dodaj komponenty do strefy",
|
||||
"form.button.add-field": "Dodaj kolejne pole",
|
||||
"form.button.add-first-field-to-created-component": "Dodaj pierwsze pole do komponentu",
|
||||
"form.button.add.field.to.component": "Dodaj kolejne pole do tego komponentu",
|
||||
"form.button.add.field.to.contentType": "Dodaj kolejne pole do tego typu zawartości",
|
||||
"form.button.configure-component": "Skonfiguruj komponent",
|
||||
"form.button.configure-view": "Skonfiguruj widok",
|
||||
"form.button.delete": "Usuń",
|
||||
"form.button.finish": "Zakończ",
|
||||
"form.button.select-component": "Wybierz komponent",
|
||||
"injected-components.content-manager.edit-settings-view.link.content-types": "Edytuj typ zawartości",
|
||||
"injected-components.content-manager.edit-settings-view.link.components": "Edytuj komponent",
|
||||
"menu.section.components.name.plural": "Komponenty",
|
||||
"menu.section.components.name.singular": "Komponent",
|
||||
"modalForm.attribute.form.base.name": "Nazwa",
|
||||
"modalForm.attribute.form.base.name.description": "Spacja nie jest doszwolona dla nazwy atrybutu",
|
||||
"modalForm.attribute.text.type-selection": "Typ",
|
||||
"modalForm.attributes.select-component": "Wybierz komponent",
|
||||
"modalForm.attributes.select-components": "Wybierz komponenty",
|
||||
"modalForm.component.header-create": "Utwórz komponent",
|
||||
"modalForm.components.create-component.category.label": "Wybierz kategorię lub wprowadź nazwę, aby utworzyć nową",
|
||||
"modalForm.components.icon.label": "Ikona",
|
||||
"modalForm.contentType.header-create": "Utwórz typ zawartości",
|
||||
"modalForm.editCategory.base.name.description": "Spacja nie jest doszwolona dla nazwy kategorii",
|
||||
"modalForm.header-edit": "Edytuj {name}",
|
||||
"modalForm.header.categories": "Kategorie",
|
||||
"modalForm.sub-header.addComponentToDynamicZone": "Dodaj nowy komponent do strefy dynamicznej",
|
||||
"modalForm.sub-header.attribute.create": "Dodaj nowe pole {type}",
|
||||
"modalForm.sub-header.attribute.create.step": "Dodaj nowy komponent ({step}/2)",
|
||||
"modalForm.sub-header.attribute.edit": "Edytuj {name}",
|
||||
"modalForm.sub-header.chooseAttribute.component": "Wybierz pole dla komponentu",
|
||||
"modalForm.sub-header.chooseAttribute.contentType": "Wybierz pole dla typu zawartości",
|
||||
"notification.info.creating.notSaved": "Zapisz swoją pracę przed utworzeniem nowego typu treści lub komponentu",
|
||||
"popUpWarning.bodyMessage.cancel-modifications": "Czy na pewno chcesz anulować swoje modyfikacje?",
|
||||
"popUpWarning.bodyMessage.cancel-modifications.with-components": "Czy na pewno chcesz anulować swoje modyfikacje? Niektóre komponenty zostały utworzone lub zmodyfikowane ...",
|
||||
"popUpWarning.bodyMessage.category.delete": "Czy na pewno chcesz usunąć tę kategorię? Wszystkie komponenty również zostaną usunięte.",
|
||||
"popUpWarning.bodyMessage.component.delete": "Czy na pewno chcesz usunąć ten komponent?",
|
||||
"prompt.unsaved": "Jesteś pewny, że chcesz wyjść? Wszystkie twoje modyfikacje zostaną utracone.",
|
||||
"relation.manyWay": "ma wiele",
|
||||
"table.attributes.title.plural": "pól: {number}",
|
||||
"table.attributes.title.singular": "{number} pole"
|
||||
}
|
||||
|
||||
@ -1,50 +1,155 @@
|
||||
{
|
||||
"attribute.boolean": "Boolean",
|
||||
"attribute.date": "Date",
|
||||
"attribute.email": "Email",
|
||||
"attribute.enumeration": "Enumeration",
|
||||
"attribute.boolean": "布尔类型",
|
||||
"attribute.boolean.description": "Yes 或 no, 1 或 0, true 或 false",
|
||||
"attribute.component": "组件",
|
||||
"attribute.component.description": "您可以重复或重复使用的字段组",
|
||||
"attribute.date": "日期选择器",
|
||||
"attribute.date.description": "带有小时,分钟和秒的日期选择器",
|
||||
"attribute.datetime": "日期时间选择器",
|
||||
"attribute.dynamiczone": "动态区域",
|
||||
"attribute.dynamiczone.description": "编辑内容时动态选择组件",
|
||||
"attribute.email": "电子邮件",
|
||||
"attribute.email.description": "带有格式验证的电子邮件字段",
|
||||
"attribute.enumeration": "列举",
|
||||
"attribute.enumeration.description": "值的列表,然后可以从中选择一个",
|
||||
"attribute.json": "JSON",
|
||||
"attribute.media": "Media",
|
||||
"attribute.password": "Password",
|
||||
"attribute.relation": "Relation",
|
||||
"attribute.text": "Text",
|
||||
"form.attribute.item.customColumnName": "Custom column names",
|
||||
"attribute.json.description": "JSON 格式的数据",
|
||||
"attribute.media": "媒体文件",
|
||||
"attribute.media.description": "图片,视频等文件",
|
||||
"attribute.null": " ",
|
||||
"attribute.number": "数字类型",
|
||||
"attribute.number.description": "数字类型 (integer, float, decimal)",
|
||||
"attribute.password": "密码输入框",
|
||||
"attribute.password.description": "密码字段,会隐藏字符",
|
||||
"attribute.relation": "引用",
|
||||
"attribute.relation.description": "引用一个 Content Type",
|
||||
"attribute.richtext": "富文本编辑器",
|
||||
"attribute.richtext.description": "具有格式选项的富文本编辑器",
|
||||
"attribute.text": "文本",
|
||||
"attribute.text.description": "较短或较长的文字,例如标题或说明",
|
||||
"attribute.time": "时间",
|
||||
"attribute.uid": "Uuid",
|
||||
"attribute.uid.description": "唯一标识符",
|
||||
"button.attributes.add.another": "添加一个新字段",
|
||||
"button.component.add": "添加组件",
|
||||
"button.component.create": "创建新组件",
|
||||
"button.model.create": "创建一个新的 Content Type",
|
||||
"components.componentSelect.no-component-available": "您已经添加了所有组件",
|
||||
"components.componentSelect.no-component-available.with-search": "没有与您的搜索相匹配的组件",
|
||||
"components.componentSelect.value-component": "{number} 个组件被选择 (输入以搜索组件)",
|
||||
"components.componentSelect.value-components": "{number} 个组件被选择",
|
||||
"component.repeatable": "(可重复的)",
|
||||
"configurations": "配置",
|
||||
"contentType.UID.description": "UID 用于生成 API 路由和数据库表/集合",
|
||||
"contentType.collectionName.description": "当 Content Type 的名称和表名称不同时会很有用",
|
||||
"contentType.collectionName.label": "集合名称",
|
||||
"contentType.displayName.label": "显示名称",
|
||||
"error.contentTypeName.reserved-name": "此名称不能在项目中使用,因为它可能会破坏其他功能",
|
||||
"error.validation.minSupMax": "不能更高",
|
||||
"form.attribute.component.option.add": "添加一个组件",
|
||||
"form.attribute.component.option.create": "创建一个新的组件",
|
||||
"form.attribute.component.option.create.description": "组件在类型和组件之间共享,它将随处可用。",
|
||||
"form.attribute.component.option.repeatable": "可重复组件",
|
||||
"form.attribute.component.option.repeatable.description": "最适合的成分,元标记等的多个实例(数组)。",
|
||||
"form.attribute.component.option.reuse-existing": "使用一个已存在的组件",
|
||||
"form.attribute.component.option.reuse-existing.description": "重用已经创建的组件,以使您的数据在内容类型之间保持一致。",
|
||||
"form.attribute.component.option.single": "单一组件",
|
||||
"form.attribute.component.option.single.description": "最适合的对完整地址,主要信息等字段进行分组...",
|
||||
"form.attribute.item.customColumnName": "自定义列名称",
|
||||
"form.attribute.item.customColumnName.description": "修改数据库列名,使得API返回更容易理解。",
|
||||
"form.attribute.item.defineRelation.fieldName": "Field name",
|
||||
"form.attribute.item.enumeration.graphql": "Name override for GraphQL",
|
||||
"form.attribute.item.enumeration.graphql.description": "Allows you to override the default generated name for GraphQL",
|
||||
"form.attribute.item.enumeration.placeholder": "Ex:\nmorning\nnoon\nevening",
|
||||
"form.attribute.item.enumeration.rules": "Values (one line per value)",
|
||||
"form.attribute.item.date.type.date": "日期",
|
||||
"form.attribute.item.date.type.datetime": "日期与时间",
|
||||
"form.attribute.item.date.type.time": "时间",
|
||||
"form.attribute.item.defineRelation.fieldName": "字段名称",
|
||||
"form.attribute.item.enumeration.graphql": "GraphQL 的名称重写",
|
||||
"form.attribute.item.enumeration.graphql.description": "允许您覆盖 GraphQL 的默认生成名称",
|
||||
"form.attribute.item.enumeration.placeholder": "例如:\nmorning\nnoon\nevening",
|
||||
"form.attribute.item.enumeration.rules": "值(每个值占一行)",
|
||||
"form.attribute.item.maximum": "最大值",
|
||||
"form.attribute.item.maximumLength": "最大长度",
|
||||
"form.attribute.item.minimum": "最小值",
|
||||
"form.attribute.item.minimumLength": "最小长度",
|
||||
"form.attribute.item.number.type": "Number format",
|
||||
"form.attribute.item.number.type.decimal": "decimal (ex: 2.22)",
|
||||
"form.attribute.item.number.type.float": "float (ex: 3.33333333)",
|
||||
"form.attribute.item.number.type.integer": "integer (ex: 10)",
|
||||
"form.attribute.item.number.type": "数字格式",
|
||||
"form.attribute.item.number.type.biginteger": "big integer (例如: 123456789)",
|
||||
"form.attribute.item.number.type.decimal": "decimal (例如: 2.22)",
|
||||
"form.attribute.item.number.type.float": "float (例如: 3.33333333)",
|
||||
"form.attribute.item.number.type.integer": "integer (例如: 10)",
|
||||
"form.attribute.item.requiredField": "必须的",
|
||||
"form.attribute.item.requiredField.description": "如果此字段为空,则无法创建条目。",
|
||||
"form.attribute.item.requiredField.description": "如果此字段为空,则无法创建字段。",
|
||||
"form.attribute.item.settings.name": "设置",
|
||||
"form.attribute.item.privateField": "私有字段",
|
||||
"form.attribute.item.privateField.description": "该字段不会显示在 API 请求的响应中",
|
||||
"form.attribute.item.uniqueField": "唯一的",
|
||||
"form.attribute.item.uniqueField.description": "如果存在具有相同内容的现有条目,则无法创建条目。",
|
||||
"form.attribute.media.option.multiple": "多种媒体",
|
||||
"form.attribute.media.option.multiple.description": "最适合的滑块,转盘或多个文件下载",
|
||||
"form.attribute.media.option.single": "单一的媒体",
|
||||
"form.attribute.media.option.single.description": "最适合的头像,个人资料图片或封面",
|
||||
"form.attribute.settings.default": "默认值",
|
||||
"form.attribute.text.option.long-text": "较长的文字",
|
||||
"form.attribute.text.option.long-text.description": "最适合的描述,传记。
精确搜索已禁用。",
|
||||
"form.attribute.text.option.short-text": "较短的文字",
|
||||
"form.attribute.text.option.short-text.description": "最适合的标题,名称,链接(URL)。它还可以在字段进行精确搜索。",
|
||||
"form.button.add-components-to-dynamiczone": "将组件添加到区域",
|
||||
"form.button.add-field": "添加另一个字段",
|
||||
"form.button.add-first-field-to-created-component": "添加第一个字段到这个组件",
|
||||
"form.button.add.field.to.component": "向该组件添加另一个字段",
|
||||
"form.button.add.field.to.contentType": "向此 Content Type 添加另一个字段",
|
||||
"form.button.cancel": "取消",
|
||||
"form.button.configure-component": "配置组件",
|
||||
"form.button.configure-view": "配置视图",
|
||||
"form.button.continue": "继续",
|
||||
"form.button.delete": "删除",
|
||||
"form.button.finish": "结束",
|
||||
"form.button.save": "保存",
|
||||
"from": "from",
|
||||
"form.button.select-component": "选择一个组件",
|
||||
"from": "来自",
|
||||
|
||||
"injected-components.content-manager.edit-settings-view.link.content-types": "编辑这个 Content Type",
|
||||
"injected-components.content-manager.edit-settings-view.link.components": "编辑这个组件",
|
||||
"menu.section.components.name.plural": "组件",
|
||||
"menu.section.components.name.singular": "组件",
|
||||
"menu.section.models.name.plural": "Content Types",
|
||||
"menu.section.models.name.singular": "Content Type",
|
||||
"modelPage.attribute.relationWith": "Relation with",
|
||||
"modelPage.contentHeader.emptyDescription.description": "该Content Type没有任何描述",
|
||||
"plugin.description.long": "给你的API的数据结构建模. 快速的创造新的字段(fields)和关系(relations)。将会自动在项目中创建和更新文件。",
|
||||
"plugin.description.short": "给你的API的数据结构建模",
|
||||
"modalForm.attribute.form.base.name": "名称",
|
||||
"modalForm.attribute.form.base.name.description": "属性名称不允许使用空格",
|
||||
"modalForm.attribute.text.type-selection": "类型",
|
||||
"modalForm.attributes.select-component": "选择一个组件",
|
||||
"modalForm.attributes.select-components": "选择组件",
|
||||
"modalForm.component.header-create": "创建一个组件",
|
||||
"modalForm.components.create-component.category.label": "选择一个类别或输入名称以创建一个新类别",
|
||||
"modalForm.components.icon.label": "图标",
|
||||
"modalForm.contentType.header-create": "创建一个 Content Type",
|
||||
"modalForm.editCategory.base.name.description": "类别名称不允许有空格",
|
||||
"modalForm.header-edit": "编辑 {name}",
|
||||
"modalForm.header.categories": "类别",
|
||||
"modalForm.sub-header.addComponentToDynamicZone": "将新组件添加到动态区域",
|
||||
"modalForm.sub-header.attribute.create": "添加新的 {type} 字段",
|
||||
"modalForm.sub-header.attribute.create.step": "添加新的组件 ({step}/2)",
|
||||
"modalForm.sub-header.attribute.edit": "编辑 {name}",
|
||||
"modalForm.sub-header.chooseAttribute.component": "为您的组件选择一个字段",
|
||||
"modalForm.sub-header.chooseAttribute.contentType": "为您的 Content Type 选择一个字段",
|
||||
"modelPage.attribute.relationWith": "关联",
|
||||
"modelPage.contentHeader.emptyDescription.description": "该 Content Type 没有任何描述",
|
||||
"notification.info.creating.notSaved": "在创建新的内容类型或组件之前,请保存您的工作",
|
||||
"notification.info.autoreaload-disable": "要使用此插件,需要自动重载功能。请使用 `strapi develop` 启动服务",
|
||||
"plugin.description.long": "给你的 API 的数据结构建模. 快速的创造新的字段(fields)和关系(relations)。将会自动在项目中创建和更新文件。",
|
||||
"plugin.description.short": "给你的 API 的数据结构建模",
|
||||
"popUpForm.navContainer.advanced": "高级设置",
|
||||
"popUpForm.navContainer.base": "基础设置",
|
||||
"popUpWarning.bodyMessage.contentType.delete": "确实要删除此 Content Type 吗?",
|
||||
"relation.attributeName.placeholder": "Ex: author, category, tag",
|
||||
"relation.manyToMany": "has and belongs to many",
|
||||
"relation.manyToOne": "has many",
|
||||
"relation.oneToMany": "belongs to many",
|
||||
"relation.oneToOne": "has one"
|
||||
"popUpWarning.bodyMessage.cancel-modifications": "您确定要取消修改吗?",
|
||||
"popUpWarning.bodyMessage.cancel-modifications.with-components": "您确定要取消修改吗?某些组件已创建或已修改了...",
|
||||
"popUpWarning.bodyMessage.category.delete": "您确定要删除此类别吗?所有组件也将被删除。",
|
||||
"popUpWarning.bodyMessage.component.delete": "您确定要删除此组件吗?",
|
||||
"popUpWarning.bodyMessage.contentType.delete": "您确定要删除此 Content Type 吗?",
|
||||
"prompt.unsaved": "您确定要离开吗?您所有的修改都将丢失。",
|
||||
"relation.attributeName.placeholder": "例如: author, category, tag",
|
||||
"relation.manyToMany": "有并属于许多",
|
||||
"relation.manyToOne": "有很多",
|
||||
"relation.manyWay": "有很多",
|
||||
"relation.oneToMany": "属于很多",
|
||||
"relation.oneToOne": "有一个",
|
||||
"relation.oneWay": "有一个",
|
||||
"table.attributes.title.plural": "{number} 字段",
|
||||
"table.attributes.title.singular": "{number} 字段"
|
||||
}
|
||||
|
||||
@ -1,26 +1,29 @@
|
||||
{
|
||||
"containers.HomePage.Button.open": "Open the documentation",
|
||||
"containers.HomePage.Button.update": "Update",
|
||||
"containers.HomePage.PluginHeader.title": "Documentation - Settings",
|
||||
"containers.HomePage.PluginHeader.description": "Configure the documentation plugin",
|
||||
"containers.HomePage.Block.title": "Versions",
|
||||
"containers.HomePage.PopUpWarning.message": "Are you sure you want to delete this version?",
|
||||
"containers.HomePage.PopUpWarning.confirm": "I understand",
|
||||
"containers.HomePage.Button.open": "Otwórz dokumentację",
|
||||
"containers.HomePage.Button.update": "Zaktualizuj",
|
||||
"containers.HomePage.copied": "Token skopiowany do schowka",
|
||||
"containers.HomePage.PluginHeader.title": "Dokuemntacja - Ustawienia",
|
||||
"containers.HomePage.PluginHeader.description": "Skonfiguruj plugin dokumentacjis",
|
||||
"containers.HomePage.Block.title": "Wersje",
|
||||
"containers.HomePage.PopUpWarning.message": "Czy jesteś pewien, że chcesz usunąć tę wersję?",
|
||||
"containers.HomePage.PopUpWarning.confirm": "Rozumiem",
|
||||
|
||||
"containers.HomePage.form.restrictedAccess": "Restricted access",
|
||||
"containers.HomePage.form.restrictedAccess.inputDescription": "Make the documentation endpoint private. By default, the access is public",
|
||||
"containers.HomePage.form.password": "Password",
|
||||
"containers.HomePage.form.password.inputDescription": "Set the password to access the documentation",
|
||||
"containers.HomePage.form.showGeneratedFiles": "Show generated files",
|
||||
"containers.HomePage.form.showGeneratedFiles.inputDescription": "Useful when you want to override the generated documentation. \nThe plugin will generate files split by model and plugin. \nBy enabling this option it will be easier to customize your documentation",
|
||||
"containers.HomePage.form.jwtToken": "Odzyskaj swój token jwt",
|
||||
"containers.HomePage.form.jwtToken.description": "Skopiuj token i użyj go w swaggerze aby wykonać request",
|
||||
"containers.HomePage.form.restrictedAccess": "Dostęp Ograniczony",
|
||||
"containers.HomePage.form.restrictedAccess.inputDescription": "Ustaw endpoint dokumentacji jako prywatny. Domyślnie dostęp jest publiczny.",
|
||||
"containers.HomePage.form.password": "Hasło",
|
||||
"containers.HomePage.form.password.inputDescription": "Ustaw hasło aby uzyskać dostęp do dokumentacji",
|
||||
"containers.HomePage.form.showGeneratedFiles": "Pokaż wygenerowane pliki",
|
||||
"containers.HomePage.form.showGeneratedFiles.inputDescription": "Przydatne, gdy chcesz nadpisać wygenerowaną dokumentację. \nWtyczka wygeneruje pliki i podzieli je według modelu i wtyczki. \nWłączenie tej opcji ułatwi dostosowywanie dokumentacji",
|
||||
|
||||
"components.Row.generatedDate": "Last generation",
|
||||
"components.Row.open": "Open",
|
||||
"components.Row.regenerate": "Regenerate",
|
||||
"components.Row.generatedDate": "Data ostatniego wygenerowania",
|
||||
"components.Row.open": "Otwórz",
|
||||
"components.Row.regenerate": "Wygeneruj ponownie",
|
||||
|
||||
"error.regenerateDoc": "An error occurred while regenerating the doc",
|
||||
"error.noVersion": "A version is required",
|
||||
"error.regenerateDoc.versionMissing": "The version you are trying to generate doesn't exist",
|
||||
"error.deleteDoc.versionMissing": "The version you are trying to delete does not exist.",
|
||||
"notification.update.success": "Settings updated successfully"
|
||||
}
|
||||
"error.regenerateDoc": "Wystąpił błąd podczas ponownego generowania dokumentacji",
|
||||
"error.noVersion": "Wersja jest wymagana",
|
||||
"error.regenerateDoc.versionMissing": "Wersja, którą prubujesz wygenerować nie istnieje.",
|
||||
"error.deleteDoc.versionMissing": "Wersja, którą próbujesz usunąć nie istnieje.",
|
||||
"notification.update.success": "Ustawienia zaktualizowane pomyślnie"
|
||||
}
|
||||
|
||||
@ -1,26 +1,29 @@
|
||||
{
|
||||
"containers.HomePage.Button.open": "Open the documentation",
|
||||
"containers.HomePage.Button.update": "Update",
|
||||
"containers.HomePage.PluginHeader.title": "Documentation - Settings",
|
||||
"containers.HomePage.PluginHeader.description": "Configure the documentation plugin",
|
||||
"containers.HomePage.Block.title": "Versions",
|
||||
"containers.HomePage.PopUpWarning.message": "Are you sure you want to delete this version?",
|
||||
"containers.HomePage.PopUpWarning.confirm": "I understand",
|
||||
"containers.HomePage.Button.open": "打开文档",
|
||||
"containers.HomePage.Button.update": "更新",
|
||||
"containers.HomePage.copied": "令牌已被复制到粘贴板",
|
||||
"containers.HomePage.PluginHeader.title": "文档 - 设置",
|
||||
"containers.HomePage.PluginHeader.description": "配置文档插件",
|
||||
"containers.HomePage.Block.title": "版本号",
|
||||
"containers.HomePage.PopUpWarning.message": "您确定要删除此版本吗?",
|
||||
"containers.HomePage.PopUpWarning.confirm": "我确定",
|
||||
|
||||
"containers.HomePage.form.restrictedAccess": "Restricted access",
|
||||
"containers.HomePage.form.restrictedAccess.inputDescription": "Make the documentation endpoint private. By default, the access is public",
|
||||
"containers.HomePage.form.password": "Password",
|
||||
"containers.HomePage.form.password.inputDescription": "Set the password to access the documentation",
|
||||
"containers.HomePage.form.showGeneratedFiles": "Show generated files",
|
||||
"containers.HomePage.form.showGeneratedFiles.inputDescription": "Useful when you want to override the generated documentation. \nThe plugin will generate files split by model and plugin. \nBy enabling this option it will be easier to customize your documentation",
|
||||
"containers.HomePage.form.jwtToken": "检索您的 jwt 令牌",
|
||||
"containers.HomePage.form.jwtToken.description": "复制此令牌,并用它在 Swagger 中发出请求",
|
||||
"containers.HomePage.form.restrictedAccess": "禁止访问",
|
||||
"containers.HomePage.form.restrictedAccess.inputDescription": "将文档端点设为私有。默认情况下,访问权限是公共的",
|
||||
"containers.HomePage.form.password": "密码",
|
||||
"containers.HomePage.form.password.inputDescription": "设置密码以供访问文档",
|
||||
"containers.HomePage.form.showGeneratedFiles": "显示生成的文件",
|
||||
"containers.HomePage.form.showGeneratedFiles.inputDescription": "当您想要覆盖生成的文档的时候很有用。 \n该插件将生成按型号和插件拆分的文件。 \n通过启用此选项,可以更轻松地自定义文档",
|
||||
|
||||
"components.Row.generatedDate": "Last generation",
|
||||
"components.Row.open": "Open",
|
||||
"components.Row.regenerate": "Regenerate",
|
||||
"components.Row.generatedDate": "上一个生成的版本",
|
||||
"components.Row.open": "打开",
|
||||
"components.Row.regenerate": "重新生成",
|
||||
|
||||
"error.regenerateDoc": "An error occurred while regenerating the doc",
|
||||
"error.noVersion": "A version is required",
|
||||
"error.regenerateDoc.versionMissing": "The version you are trying to generate doesn't exist",
|
||||
"error.deleteDoc.versionMissing": "The version you are trying to delete does not exist.",
|
||||
"notification.update.success": "Settings updated successfully"
|
||||
}
|
||||
"error.regenerateDoc": "重新生成文件时发生错误",
|
||||
"error.noVersion": "需要一个版本",
|
||||
"error.regenerateDoc.versionMissing": "您尝试重新生成的版本不存在",
|
||||
"error.deleteDoc.versionMissing": "您尝试删除的版本不存在。",
|
||||
"notification.update.success": "设置更新成功"
|
||||
}
|
||||
|
||||
@ -9,4 +9,3 @@
|
||||
"plugin.description.long": "Wysyłaj E-maile",
|
||||
"plugin.description.short": "Wysyłaj E-maile"
|
||||
}
|
||||
|
||||
|
||||
@ -1,4 +1,11 @@
|
||||
{
|
||||
"ConfigPage.description": "配置电子邮件插件",
|
||||
"ConfigPage.title": "电子邮件 - 设置",
|
||||
"EditForm.Input.number.label": "最大文件限制 (单位:MB)",
|
||||
"EditForm.Input.select.inputDescription": "可以使用默认提供商(Sendmail)或外部提供商发送电子邮件",
|
||||
"EditForm.Input.select.label": "提供商",
|
||||
"EditForm.Input.toggle.label": "启用电子邮件发送",
|
||||
"notification.config.success": "设置已更新",
|
||||
"plugin.description.long": "发送电子邮件。",
|
||||
"plugin.description.short": "发送电子邮件。"
|
||||
}
|
||||
@ -27,6 +27,7 @@
|
||||
"notification.dropFiles.success": "{number} plików zostało przesłanych",
|
||||
"Upload.status.sizeLimit": "{plik} jest większy niż skonfigurowany rozmiar limitu",
|
||||
"Upload.status.disabled" : "Przesyłanie plików jest wyłączone",
|
||||
"Upload.status.empty": "Lista plików jest pusta",
|
||||
"plugin.description.long": "Zarządzanie plikami multimedialnymi.",
|
||||
"plugin.description.short": "Zarządzanie plikami multimedialnymi."
|
||||
}
|
||||
|
||||
@ -1,32 +1,33 @@
|
||||
{
|
||||
"ConfigPage.description": "配置上传插件",
|
||||
"ConfigPage.title": "上传-设置",
|
||||
"ConfigPage.title": "上传 - 设置",
|
||||
"EditForm.Input.number.label": "最大文件限制 (单位:MB)",
|
||||
"EditForm.Input.select.inputDescription": "文件可以上传到服务器上,也可以上传到外部存储服务供应商。",
|
||||
"EditForm.Input.select.label": "Providers",
|
||||
"EditForm.Input.select.label": "提供者",
|
||||
"EditForm.Input.toggle.label": "启用文件上传",
|
||||
"EmptyLi.message": "没有上传的文件",
|
||||
"EntriesNumber.number": "找到 {number} 个文件",
|
||||
"EntriesNumber.number.plural": "找到 {number} 个文件",
|
||||
"EntriesNumber.number.plural": "找到 {number} 个文件",
|
||||
"HomePage.InputSearch.placeholder": "搜索文件…",
|
||||
"HomePage.description": "发现所有上传的文件",
|
||||
"HomePage.title": "上传",
|
||||
"Li.linkCopied": "链接复制到剪贴板",
|
||||
"ListHeader.hash": "Hash",
|
||||
"ListHeader.name": "文件名",
|
||||
"ListHeader.related": "Related to",
|
||||
"ListHeader.related": "相关",
|
||||
"ListHeader.size": "大小",
|
||||
"ListHeader.type": "类型",
|
||||
"ListHeader.updated": "更新时间",
|
||||
"PluginInputFile.link": "浏览",
|
||||
"PluginInputFile.loading": "您的文件正在上传…",
|
||||
"PluginInputFile.loading": "您的文件正在上传...",
|
||||
"PluginInputFile.text": "将文件拖放到该区域或 {link} 文件上传",
|
||||
"Upload.status.empty": "文件为空",
|
||||
"Upload.status.disabled": "文件上传已禁用",
|
||||
"Upload.status.sizeLimit": "{file} 大于配置的限制大小!",
|
||||
"notification.config.success": "设置已更新",
|
||||
"notification.delete.success": "文件已被删除",
|
||||
"notification.dropFile.success": "您的文件已上传",
|
||||
"notification.dropFiles.success": "{number} 个文件已上传",
|
||||
"Upload.status.sizeLimit": "{file}大于配置的限制大小",
|
||||
"Upload.status.disabled" : "文件上传已禁用",
|
||||
"plugin.description.long": "多媒体档案管理.",
|
||||
"plugin.description.short": "多媒体档案管理."
|
||||
}
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
"BoundRoute.title": "Wywoływanie",
|
||||
"Controller.input.label": "{label} ",
|
||||
"Controller.selectAll": "Zaznacz wszystko",
|
||||
"Controller.unselectAll": "Odznacz wszystko",
|
||||
"EditForm.inputSelect.description.role": "Połączy nowego uwierzytelnionego użytkownika z wybraną rolą.",
|
||||
"EditForm.inputSelect.durations.description": "Liczba godzin podczas których użytkownik nie może dołączyć.",
|
||||
"EditForm.inputSelect.durations.label": "Okres",
|
||||
@ -13,9 +14,11 @@
|
||||
"EditForm.inputToggle.description.email-confirmation-redirection": "Po potwierdzeniu adresu email, wybierz gdzie zostaniesz przekierowany.",
|
||||
"EditForm.inputToggle.description.sign-up": "Po wyłączeniu (OFF) proces rejestracji jest zabroniony. Nikt nie może już dołączyć bez względu na używanego dostawcę.",
|
||||
"EditForm.inputToggle.label.email": "Jedno konto na adres email",
|
||||
"EditForm.inputToggle.description.email-reset-password": "Adres URL strony resetowania hasła aplikacji",
|
||||
"EditForm.inputToggle.label.email-confirmation": "Zezwól na potwierdzenie adresu email",
|
||||
"EditForm.inputToggle.label.email-confirmation-redirection": "url przekierowania",
|
||||
"EditForm.inputToggle.label.sign-up": "Rejestracja",
|
||||
"EditForm.inputToggle.label.email-reset-password": "Straona resetowania hasła",
|
||||
"EditPage.cancel": "Anuluj",
|
||||
"EditPage.form.roles": "Szczegóły",
|
||||
"EditPage.form.roles.label.description": "Opis",
|
||||
@ -106,5 +109,6 @@
|
||||
"notification.success.delete": "Pozycja została usunięta",
|
||||
"notification.success.submit": "Ustawienia zostały zaktualizowane",
|
||||
"plugin.description.long": "Chroń API za pomocą procesu pełnego uwierzytelniania opartego na JWT. Ta wtyczka zawiera również strategię ACL, która pozwala zarządzać uprawnieniami między grupami użytkowników.",
|
||||
"plugin.description.short": "Chroń API za pomocą procesu pełnego uwierzytelniania opartego na JWT"
|
||||
"plugin.description.short": "Chroń API za pomocą procesu pełnego uwierzytelniania opartego na JWT",
|
||||
"PopUpForm.Providers.vk.providerConfig.redirectURL": "Adres URL przekierowania do dodania w konfiguracji aplikacji VK"
|
||||
}
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
"BoundRoute.title": "绑定路由到",
|
||||
"Controller.input.label": "{label} ",
|
||||
"Controller.selectAll": "选择全部",
|
||||
"Controller.unselectAll": "取消选择全部",
|
||||
"EditForm.inputSelect.description.role": "新验证身份的用户将被赋予所选角色。",
|
||||
"EditForm.inputSelect.durations.description": "用户无法订阅的时间段。",
|
||||
"EditForm.inputSelect.durations.label": "持续时间",
|
||||
@ -9,8 +10,14 @@
|
||||
"EditForm.inputSelect.subscriptions.description": "限制每个每小时IP的订阅数。",
|
||||
"EditForm.inputSelect.subscriptions.label": "管理订阅配额",
|
||||
"EditForm.inputToggle.description.email": "不允许用户使用不同的认证提供者(绑定的相同的电子邮件地址)来创建多个帐户。",
|
||||
"EditForm.inputToggle.description.email-confirmation": "启用(ON)后,新注册的用户会收到一封确认电子邮件。",
|
||||
"EditForm.inputToggle.description.email-confirmation-redirection": "确认您的电子邮件后,选择将您重定向到的位置。",
|
||||
"EditForm.inputToggle.description.email-reset-password": "应用程序的重置密码页面的 URL",
|
||||
"EditForm.inputToggle.description.sign-up": "当禁用(OFF)时,注册过程将被禁止。任何人无论使用任何的供应商都不可以订阅。",
|
||||
"EditForm.inputToggle.label.email": "每个电子邮件地址一个帐户",
|
||||
"EditForm.inputToggle.label.email-confirmation": "启用电子邮件确认",
|
||||
"EditForm.inputToggle.label.email-confirmation-redirection": "重定向 URL",
|
||||
"EditForm.inputToggle.label.email-reset-password": "重置密码页面 URL",
|
||||
"EditForm.inputToggle.label.sign-up": "启用注册",
|
||||
"EditPage.cancel": "取消",
|
||||
"EditPage.form.roles": "角色详情",
|
||||
@ -22,13 +29,13 @@
|
||||
"EditPage.header.description.create": " ",
|
||||
"EditPage.header.title": "{name} ",
|
||||
"EditPage.header.title.create": "创建一个新角色",
|
||||
"EditPage.notification.permissions.error": "获取权限(permission)时出错",
|
||||
"EditPage.notification.policies.error": "获取鉴权策略(policies)时出错",
|
||||
"EditPage.notification.role.error": "获取角色时出错",
|
||||
"EditPage.notification.permissions.error": "获取权限时发生错误",
|
||||
"EditPage.notification.policies.error": "获取鉴权策略时发生错误",
|
||||
"EditPage.notification.role.error": "获取角色时发生错误",
|
||||
"EditPage.submit": "保存",
|
||||
"Email.template.email_confirmation": "确认电子邮件地址",
|
||||
"Email.template.reset_password": "重置密码",
|
||||
"Email.template.success_register": "注册成功",
|
||||
"Email.template.validation_email": "电子邮件地址验证",
|
||||
"HeaderNav.link.advancedSettings": "高级设置",
|
||||
"HeaderNav.link.emailTemplates": "电子邮件模板",
|
||||
"HeaderNav.link.providers": "提供者",
|
||||
@ -52,17 +59,17 @@
|
||||
"Plugins.header.title": "权限",
|
||||
"Policies.InputSelect.empty": "没有",
|
||||
"Policies.InputSelect.label": "允许执行以下操作:",
|
||||
"Policies.header.hint": "选择应用程序或插件的操作,然后点击COG图标显示绑定的路由",
|
||||
"Policies.header.hint": "选择应用程序或插件的操作,然后点击 COG 图标显示绑定的路由",
|
||||
"Policies.header.title": "高级设置",
|
||||
"PopUpForm.Email.email_templates.inputDescription": "如果你不确定如何使用变量, {link}",
|
||||
"PopUpForm.Email.link.documentation": "看看我们的文档。",
|
||||
"PopUpForm.Email.options.from.email.label": "Shipper email",
|
||||
"PopUpForm.Email.options.from.email.label": "Shipper 电子邮件地址",
|
||||
"PopUpForm.Email.options.from.email.placeholder": "johndoe@gmail.com",
|
||||
"PopUpForm.Email.options.from.name.label": "Shipper name",
|
||||
"PopUpForm.Email.options.from.name.label": "Shipper 名称",
|
||||
"PopUpForm.Email.options.from.name.placeholder": "John Doe",
|
||||
"PopUpForm.Email.options.message.label": "消息",
|
||||
"PopUpForm.Email.options.object.label": "主题",
|
||||
"PopUpForm.Email.options.response_email.label": "Response email",
|
||||
"PopUpForm.Email.options.response_email.label": "回复电子邮件",
|
||||
"PopUpForm.Email.options.response_email.placeholder": "johndoe@gmail.com",
|
||||
"PopUpForm.Email.reset_password.options.message.placeholder": "<p>请点击此链接验证您的帐户</p>",
|
||||
"PopUpForm.Email.reset_password.options.object.placeholder": "请确认您的电子邮件地址 %APP_NAME%",
|
||||
@ -70,33 +77,37 @@
|
||||
"PopUpForm.Email.success_register.options.object.placeholder": "请确认您的电子邮件地址 %APP_NAME%",
|
||||
"PopUpForm.Email.validation_email.options.message.placeholder": "<p>请点击此链接验证您的帐户</p>",
|
||||
"PopUpForm.Email.validation_email.options.object.placeholder": "请确认您的电子邮件地址 %APP_NAME%",
|
||||
"PopUpForm.Providers.callback.placeholder": "TEXT",
|
||||
"PopUpForm.Providers.callback.placeholder": "文本",
|
||||
"PopUpForm.Providers.discord.providerConfig.redirectURL": "Discord 应用中配置的重定向 URL",
|
||||
"PopUpForm.Providers.enabled.description": "如果禁用,用户将无法使用此供应商。",
|
||||
"PopUpForm.Providers.enabled.label": "启用",
|
||||
"PopUpForm.Providers.facebook.providerConfig.redirectURL": "Facebook应用中配置的重定向URL",
|
||||
"PopUpForm.Providers.github.providerConfig.redirectURL": "GitHub应用中配置的重定向URL",
|
||||
"PopUpForm.Providers.google.providerConfig.redirectURL": "Google应用中配置的重定向URL",
|
||||
"PopUpForm.Providers.instagram.providerConfig.redirectURL": "Instagram应用中配置的重定向URL",
|
||||
"PopUpForm.Providers.facebook.providerConfig.redirectURL": "Facebook 应用中配置的重定向 URL",
|
||||
"PopUpForm.Providers.github.providerConfig.redirectURL": "GitHub 应用中配置的重定向 URL",
|
||||
"PopUpForm.Providers.google.providerConfig.redirectURL": "Google 应用中配置的重定向 URL",
|
||||
"PopUpForm.Providers.instagram.providerConfig.redirectURL": "Instagram 应用中配置的重定向 URL",
|
||||
"PopUpForm.Providers.vk.providerConfig.redirectURL": "VK 应用中配置的重定向 URL",
|
||||
"PopUpForm.Providers.key.label": "Client ID",
|
||||
"PopUpForm.Providers.key.placeholder": "TEXT",
|
||||
"PopUpForm.Providers.linkedin2.providerConfig.redirectURL": "Linkedin应用中配置的重定向URL",
|
||||
"PopUpForm.Providers.redirectURL.front-end.label": "重定向URL",
|
||||
"PopUpForm.Providers.key.placeholder": "文本",
|
||||
"PopUpForm.Providers.linkedin2.providerConfig.redirectURL": "Linkedin 应用中配置的重定向 URL",
|
||||
"PopUpForm.Providers.microsoft.providerConfig.redirectURL": "要在您的 Microsoft 应用程序配置中添加的重定向 URL",
|
||||
"PopUpForm.Providers.redirectURL.front-end.label": "重定向 URL",
|
||||
"PopUpForm.Providers.secret.label": "Client Secret",
|
||||
"PopUpForm.Providers.secret.placeholder": "TEXT",
|
||||
"PopUpForm.Providers.twitter.providerConfig.redirectURL": "Twitter应用中配置的重定向URL",
|
||||
"PopUpForm.Providers.secret.placeholder": "文本",
|
||||
"PopUpForm.Providers.twitter.providerConfig.redirectURL": "Twitter 应用中配置的重定向 URL",
|
||||
"PopUpForm.button.cancel": "取消",
|
||||
"PopUpForm.button.save": "保存",
|
||||
"PopUpForm.header.add.providers": "增加新的供应商(Provider)",
|
||||
"PopUpForm.header.add.providers": "增加新的供应商",
|
||||
"PopUpForm.header.edit.email-templates": "编辑电子邮件模版",
|
||||
"PopUpForm.header.edit.providers": "编译 供应商",
|
||||
"PopUpForm.header.edit.providers": "编辑供应商",
|
||||
"PopUpForm.inputSelect.providers.label": "选择供应商",
|
||||
|
||||
"components.Input.error.password.length": "密码过短",
|
||||
"notification.error.delete": "删除数据时出错",
|
||||
"notification.error.fetch": "获取数据时出错",
|
||||
"notification.error.fetchUser": "获取用户时出错",
|
||||
"notification.info.emailSent": "电子邮件已发送",
|
||||
"notification.success.delete": "该项已被删除",
|
||||
"notification.success.submit": "设置已被更新",
|
||||
"plugin.description.long": "使用基于JWT的完整身份验证过程来保护API。这个插件还有一个ACL策略,允许你管理用户组之间的权限。",
|
||||
"plugin.description.short": "使用基于JWT的完整身份验证过程保护API"
|
||||
}
|
||||
"plugin.description.long": "使用基于 JWT 的完整身份验证过程来保护 API。这个插件还有一个 ACL 策略,允许你管理用户组之间的权限。",
|
||||
"plugin.description.short": "使用基于 JWT 的完整身份验证过程保护 API"
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user