【发布时间】:2013-10-01 06:51:38
【问题描述】:
我正在编写一些测试,我需要创建一些对象,但是当我尝试在 Django 视图之外创建一些对象时出现此错误
cat = Category.objects.create(catalog=c, name="Category one")
返回
TypeError: 'name_es' is an invalid keyword argument for this function
modeltranslation 0.6.1 失败,但适用于 0.3.2
name 是使用模型翻译翻译的字段。
来自文档:
单元测试使用 django.utils.translation.trans_real 函数 在视图功能之外激活和停用特定语言。
我试过了:
trans_real.activate('es')
cat = Category.objects.create(catalog=c, name="Category one")
我得到同样的错误:(
有人知道在 Django 中测试基于模型转换的模型的更好方法吗?
已编辑
到目前为止尝试了更多的东西:
cat = Category.objects.create(**{'catalog':c, 'name': 'Category one'})
TypeError: 'name_es' is an invalid keyword argument for this function
【问题讨论】:
-
还有deactivate功能,你试过吗?
deactivate() -
我收到与
deactivate()相同的错误 -
您是否尝试过将属性作为 kwargs 字典传递来创建方法?
标签: python django django-modeltranslation django-1.6