问题标签 [model-mommy]
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.
django - 反向 FK 模型妈妈食谱
我正在使用带有 Django 测试的model_mommy来创建对象。我在创建具有反向 FK 的模型时遇到问题。作为一种解决方法,我可以用相反的方式来做,但是虽然它有效,但它看起来并不正确,所以我想知道我是否可以反过来做?
假设我有两个模型,用户和配置文件,通过从配置文件到用户的 FK 相关联(它不是一对一的,它只是一个 FK)。Profile 模型有一个布尔属性调用 is_aardvark。
在模型妈妈中,我可以创建如下食谱:
然后我可以在我的测试中使用 aardvark 配置文件创建一个用户,例如:
这似乎不对,因为我正在通过 aardvark_profile 配方创建用户。理想情况下,我想通过某种用户配方创建一个用户(也许将来我会有一些其他模型 FKd 给用户,所以上面的方法不起作用)。
我已经尝试过以下方法,但不起作用:
这甚至可能吗?有任何想法吗?如果一切都失败了,我可以创建一个辅助方法来为我做这件事。
谢谢!
python - Django:ModelMommy mommy.make 函数上的 GEOSException
当我尝试创建妈妈模型时,从模型妈妈那里得到一个奇怪的错误
奇怪的是,唯一可行的东西是在另一个函数中——实际上这些其他函数成功地使用它来创建妈妈模型。
python - model_mommy 打破 django-mptt
我用来在我的测试model_mommy
中创建实例MPTTModel
,但它似乎破坏了由 mptt 管理的树:
不使用 model_mommy 也可以正常工作:
我怀疑问题在于 model_mommy 为 、 和 提供了随机值tree_id
,它们lft
是必填字段,但应该由 MPTT 处理。rght
level
有没有办法告诉模特妈妈根本不要填写这些字段?还是这些字段的默认值不会破坏 MPTT 的保存算法?
python - Django:使用 Model-Mommy 测试自定义 ModelForm 的“干净”方法
=======更新=======
@JF 为在 ModelForms 中使用模型妈妈提出了一个绝妙的视角。
使用以下代码,我设法为模型的所有字段自动生成随机数据,除了我想要操作的那些。
测试.py:
模型.py
表格.py:
暂时,我这样测试它:
测试.py:
是否有为表单提供随机数据的工具?或者......我可以为此目的使用模型的可用工具吗?搜索那些支持 Python 3 的文档,我不明白这是如何实现的。
唯一明确提供此类服务的是Django-Whatever,它与 python3 不兼容。
django - 使用 Model Mommy 测试登录
我在功能测试中测试登录时遇到问题。我正在使用模型妈妈创建一个用户名为 Megan 的密码,但我的测试仍然没有通过,因为发送信息时它会在“请输入正确的用户名和密码”的 html 页面上抛出错误。请注意,两者字段可能区分大小写。” 所以我怀疑没有创建测试用户或类似的东西。
功能测试:
登录.html
users.urls.py:
python - 处理自引用外键;模特妈妈
我收到自引用 FK 使用假对象测试 django 的典型运行时错误:
该模型:
将自己称为 FK 的文档很少。你怎么能用modelmommy伪造一个需要自己的实例?谢谢
python - 区分自定义和第 3 方/近交应用程序;django
我正在为 model_mommy 编写测试,这是 django 非常有用的假对象。我想要一种让脚本自我维持的快速方法,它只需要为您的 django 项目中的自定义应用程序编写测试。现在它可能会为你使用的所有应用程序找到并编写测试,比如auth
你tagging
没有编写的和。如果您使用 mommy(或更改为混音器,它应该也可以工作),您可以使用该脚本。什么是os.walk
查找哪些应用程序实际上是我的应用程序?谢谢
django - model_mommy - 用户到分配关系
我终于为我的 Django 应用程序设置了测试,但我在开始时遇到了困难。我正在使用model_mommy
为我的测试创建动态数据,但有以下问题:
我正在测试的视图应该向我展示assignments
特定用户必须完成的所有内容。为了测试这一点,我想创建 500 个作业,登录到应用程序并检查它们是否显示。到目前为止,我有以下测试用例:
和
第一个测试通过并完成了它应该做的事情:TestLogin
登录用户并显示他的帐户页面。问题开始于TestShowAssignments
,它创建了 500 个作业,但如果我用 来查看作业print (self.assignments[0].coders)
,我得到了auth.User.None
. 所以它不会将我定义的用户添加为与分配的关系。这里可能重要的是coders
模型中的字段是一个 m2m 字段,我试图通过使用来解决它related
,但这似乎不起作用。
登录也不起作用:如果我使用与登录期间相同的代码TestLogin
,TestShowAssignments
我将无法登录并查看用户页面。
所以,我的问题是:如何使用model_mommy
创建作业并将它们添加到特定用户,以便我可以以该用户身份登录并查看作业是否正确显示?
django - 模型妈妈:与单个食谱具有外键关系的多个食谱
我有一段时间对 ModelMommy 感到烦恼,但我不知道如何正确地做到这一点。
让我们假设一个简单的关系:
和食谱:
现在,当我制作这些资产配方时,我得到一个错误:
这可以通过将asset1的组织作为参数提供给asset2的make方法来解决:
但是必须有一种更简单、更干净的方式来做到这一点。
编辑
根据 Helgi 回答中的链接,我已将所有配方外键更改为指向闭包:
并且可以创建任意数量的资产:
python - 如何使用 model_mommy 模拟从 TimeStampedModel 继承的模型的 created 字段?
我正在尝试测试日期过滤器,但无法使用 mommy.make() 设置创建日期。当我使用模型 mommy 制作对象时,created 字段设置为创建对象的时间,而不是我使用 mommy.make() 传入的时间
此测试因断言错误而失败:
我可能对 model_mommy 如何创建这些对象有误解。但我认为这应该创建它并正确设置创建日期。虽然看起来默认的 TimeStampedObject 行为正在接管。