问题标签 [django-modeltranslation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - django 权限和内容类型翻译
一段时间以来,我一直在使用django-modeltranslation来翻译 django 中的模型。这真的很简单,并且在我一直在开发的应用程序上运行良好,所有模型翻译的内容都由最终用户插入表单。
例如:输入:内容,content_en,content_pt,...
我必须构建一个应用程序,我需要在其中翻译 django 生成的“内置”模型字符串,例如“auth.permission.name”或“contenttypes.contenttype.name” ,并将它们添加到翻译 django.po 文件中。
我想出了一个很好的解决方案,
它使用 post_migration 信号创建一个包含 ugettext_lazy 元素列表的文件,因此新的字符串,例如新的 contenttype.name,被动态添加到“django.po”并加载到数据库中。
然而,使用 ugettext 调用创建文件有点奇怪
为了注册字符串,但我没有找到另一种注册方式并将它们动态添加到 django.po 文件中,所以我需要你的帮助
这是我所做的:
1.我创建了一个名为“工具”的应用程序,它是 INSTALLED_APPS 上的最后一个,所以它的迁移自然是最后一个被调用的。这个应用程序没有任何模型,它只是运行迁移,有 django-modeltranslation translation.py 文件和一个带有 post_migration 信号调用的应用程序配置。
2.运行“ manage.py makemigrations ”会在“auth”和“contenttypes”应用程序上创建带有额外“name_*”字段的迁移。
3.应用程序的应用程序配置具有 post_migrate 信号
4.迁移后调用 make_translations() 并生成一个包含 uggettext_lazy 调用列表的文件。
这是我想改变的一点。我真的需要创建一个文件吗?
上面的结果是这样的文件:
5.运行 'makemessages' 会将这些字符串添加到 'django.po' 文件中,然而 post_migration 信号并没有在这里停止,而是加载数据库中现有的编译字符串
如何在不创建文件的情况下替换“make_translations()”并使用 ugettext_lazy 注册这些字符串?
谢谢你的帮助
python - django - 迁移和模型翻译的麻烦
我正在尝试将我的应用程序从 Django v1.6.11 升级到 v1.7.8。我按照说明从 South 升级,但一次又一次地遇到同样的错误。更确切地说:
在我看来,这似乎是一个 django-modeltranslation 问题。我已经在他们的网站上检查了依赖项,并且我使用了正确的设置:django 1.7.11、python 2.7.5、django-modeltranslation 0.8。
注意:如果我从我的 virtualenv 中卸载 South,我仍然会遇到同样的错误。
我试图从我的项目中解决我能够找到的所有弃用警告。但无论如何,迁移错误仍然存在。谁能看到任何可能的解决方案?谢谢 :-)
设置.py:
更新:根据 dukeofweatherby 的建议,我从我的 urls.py 中删除了对 admin.autodiscover() 的调用。无论如何,在此之后我仍然遇到同样的错误。
更新 2:from translation import *
在导入 TranslationAdmin 之前解决了这个问题
python - 如何在 django-taggit 中添加翻译字段?
我正在开发多语言网站。在我的应用程序中,我使用 django modeltranslation 从管理员设置不同语言的值。那么如何将模型翻译添加到django-taggit以在不同语言上添加标签?
django - 如何设置默认语言 django-modeltranslation
我使用 django-modeltranslation 它工作得很好,但我有问题默认语言不起作用,其他语言的网站负载
我的设置.py
urls.py 配置
如何解决这个问题?解决办法是什么?
django - 想要翻译 Django 用户模型 first_name 和 last_name - django 1.5
我想翻译我的 from django.contrib.auth.models 导入用户模型的名字和姓氏。我知道 Django 中的自定义用户模型。但是有没有更好的方法来使用django Hvad进行翻译
作为参考,我在这里附上我的模型
如您所见, bio 字段是可翻译的,但我将如何翻译我的用户模型 first_name 和 last_name 字段
django - django-modeltranslation 显示所有语言形式
我想同时显示 3 种表格(使用不同的语言)语言:
模型:
形式:
然后想要显示不依赖于用户选择的语言的 3 个表单(en/fr/ja)
django-modeltranslation==0.10.1
Django==1.8.4
python - 使用 ModelTranslation 翻译 Django 中的同步模型
我正在使用ModelTranslation来翻译我的模型的内容。
但是,在开始使用该库之前,我已经使用makemigrations
了migrate
.
我按照说明进行操作,但makemigrations
没有识别出任何更改,因为它们已被迁移。
文件说
你可以使用一个小帮手:sync_translation_fields 命令,它可以执行 schema-ALTERing SQL 来添加新字段。
但即使sync_translation_fields
说No new translatable fields detected
。
如何使用 ModelTranslation 翻译我已经迁移的模型?
django - /admin/translation_manager/translationentry/ 处的 OperationalError 没有这样的列:TRUE
我在我的 django 应用程序中使用 django-modeltranslation 进行多语言选项。我按照文档中的说明进行操作。但是当我接受“翻译条目”时,frm admin 我收到一条错误消息
/admin/translation_manager/translationentry/ 处的 OperationalError 没有这样的列:TRUE
任何人都可以帮助这是什么问题?
python - Django forms.py 初始化错误?
我有一个 django 视图将用户的首选语言环境传达给 forms.py 中的表单。但是,该表单似乎在我调用它之前就已经初始化了。
类 SurveyForm() 似乎在我从 views.py 调用之前加载,甚至在SurveyForms()初始化函数激活之前加载。
这是代码:
当我上课时,它确实有效translation.activate('nl')
。SurveyForm
当我放入translation.activate('nl')
,__init__
或 时views.py
,它不起作用。这怎么能改变?
注意:我使用模型翻译,所以Q1.name
当荷兰语处于活动状态时会得到荷兰语翻译。
python - django modeltranslation 删除数据
我在用模型翻译翻译django-eav字段时遇到了奇怪的麻烦。我想翻译 EnumValue 字段。translations.py 中的代码 这里是value
在eav value
/models.py 中:
问题是,我已经在数据库中有很多 EnumValues。当我编写此翻译代码并进行迁移时,旧值就会消失。对象仍然存在其他字段,例如icon
,但值为空。如果我尝试添加以前存在的价值,它会说:价值已经存在。如果我评论翻译代码并进行迁移,旧值就会恢复原状。为什么会这样?