问题标签 [django-1.7]
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 1.7 问题
我正在尝试移植我的项目以使用 Django 1.7。一切都很好,除了 1 件事。测试文件夹中的模型。
Django 1.7 新迁移在内部运行 migrate 命令。在运行 syncdb 之前。这意味着如果模型不包含在迁移中 - 它不会填充到数据库(也不会填充到测试数据库)。这正是我现在正在经历的。
我要做的是:
在我的/app/tests/models.py
我有虚拟模型:class TestBaseImage(BaseImage): pass
它所做的只是从抽象 BaseImage
模型继承。
然后在测试中我创建该虚拟模型的实例来测试它。
问题是它不再起作用了。它不包含在迁移中(这很明显,因为我不想将我的测试模型保留在生产数据库中)。运行我的测试会导致数据库错误说table does not exist
。这是有道理的,因为它不包含在迁移中。
有没有办法让它与新的迁移系统一起工作?我找不到“修复”它的方法。
我使用的代码:
应用程序/测试/models.py
应用程序/模型.py
工厂:
示例测试:
python - 创建一个活动类 Django
我正在开发一个项目,该项目需要为系统中所做的每个更改以及数据库中所做的更改创建一个条目,例如:
Jane
将她的个人资料更新address
为1st Street No.3
我正在考虑使用一个抽象模型,每个报告活动的对象都继承自该模型,但也许解决方案是创建另一种机制。
我应该如何实现这个功能,为什么?
django - Django 1.7 升级错误:AppRegistryNotReady:模型尚未加载
我正在尝试将项目从 Django 1.6 升级到 1.7。到目前为止,我已经创建了一个具有所有相同安装的新 virtualenv,并将 Django 版本升级到新版本。我需要从 South 升级,但这样做时出错,所以我想我最初只是尝试 runserver,但我收到以下错误:
任何想法可能导致错误以及如何解决它?
python - Django 1.7 迁移没有被选中
使用 Django 1.7 和它的新迁移我遇到了一个奇怪的问题。
我将我的设置文件分成 3 个文件,我一直在 1.7 之前的版本中完成这些文件,例如......
__init__.py
两者development.py
都有production.py
自己的数据库设置用于那里的环境。但是,使用新的迁移系统运行迁移不会检测到任何东西,除非我将数据库设置放在base.py
文件中。
我应该将此行修改为以下内容:
还是有更好的方法?
python - Django:为什么我的图像字段表单不验证?
我有这个模型:
而这种形式:
但是当我尝试验证时,它不起作用!
你能发现错误吗?
我得到的只是“图片链接表单无效”,这意味着它没有通过“picture_form.is_valid()”。
这是模板:
python - Django 固定装置使用默认值保存
我正在使用 Django 1.7,但我的固定装置有问题。
我希望 Django 使用默认值或使用该save()
方法创建未指定的值。
这是我目前的对象:
如您所见,当我生成一个 newPost()
时created_at
,updated_at
和uuid
值会自动创建在save()
. 但是当我使用固定装置时,我收到以下错误:
如果我在我的夹具文件中指定 a uuid
,那么我会得到一个错误 oncreated_at
然后 on updated_at
。所以我必须指定每个字段的内容,即使我希望它是“自动的”。
从文档(为什么在 django管理文档中?!),我知道该save()
方法没有被调用,所以这就是为什么我放入该save()
方法的所有内容都不起作用的原因。但是不应该启用/使用default
or功能吗?auto_now*
处理夹具文件时,数据按原样保存到数据库中。不调用模型定义的 save() 方法,并且任何 pre_save 或 post_save 信号都将使用 raw=True 调用,因为实例仅包含模型本地的属性。例如,您可能希望禁用访问在夹具加载期间不存在的相关字段的处理程序,否则会引发异常
有没有办法“强制” Django 自动使用default
或auto_now*
功能的固定装置?我manage.py syncdb
用来创建所有表等。
我在谷歌和堆栈溢出上进行了搜索,但似乎找不到正确的搜索关键字。
UPDATE-1:以下google 小组讨论说对象以raw
模式保存,这意味着auto_now*
不考虑功能。我仍在寻找是否有办法将某些模型功能挂钩到 Django 固定装置保存。
python - Django 1.7 - 不小心丢了一张桌子。如何恢复它?
我不小心在 Django 1.7 项目中删除了一张表。我跑了makemigrations
& migrate
。这两个命令都没有识别出该表已删除。所以他们没有影响。
我应该删除模型的代码、进行迁移、添加模型的代码并再次迁移吗?或者有没有更好的恢复方法?
django - 在 Django 1.7 中访问 User.get_absolute_url
我刚刚从 Django 1.5 升级到 1.7,现在我的用户对象没有get_absolute_url
方法。
这曾经有效:
作为参考,这是我在 settings.py 中的内容:
关于可能导致这种情况的任何想法?
django - django 按语言加载对象名称
我有这样定义的模型
所以,对于 'foo' 表
我有'fooname'表
而且,我当然将 request.LANGUAGE 设置为有意义的东西。
问题是:如何将 Foo 模型上的 name 属性动态评估为本地化名称,即类似
但没有明确传递请求对象?
我的意思是,如果我有 Bar 的集合,我想写一些类似的东西
不需要复杂的语言匹配(使用 'en' 表示 'en-US')或回退(如果当前语言没有值,则使用 'en-US')逻辑。