问题标签 [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.

0 投票
2 回答
1080 浏览

python - 可选添加额外字段时更改模型表单的顺序?

我有这个模型:

我正在创建一个模型表单:

关键是用户可能不会更改现有服务器对象的名称字段,但如果表单没有实例,我希望用户指定名称。换句话说:用户应该提供一个名称,但以后不要更改它。

当我使用此代码时,名称最终位于底部,但它应该位于顶部。在较早的 django 版本中,插入可以解决问题,但是自从进入 django 1.7 以来,这不再起作用。

然后我在这里阅读: 如何在 Django ModelForm 中订购字段?

...使用元类中的字段值。但现在我遇到的问题是字段列表有时应包含“名称”,而有时则不包含。取决于是否有实例。但是从 Meta 类我不能使用 self.instance 来检查。再次列出所有字段只是为了改变那里的顺序似乎有点烦人。

如何更改模型表单字段的顺序?

编辑:我很想继续在模板中循环。此外,在管理员以及任何模板中都有正确的顺序会很好。不过模板更重要。

0 投票
1 回答
48 浏览

django-forms - 如何在 django 中将 css 类添加到已安装应用程序的表单对象中

我目前正在学习django 酥脆的形式并将它们整合到我的项目中。但我决定使用django-user-accounts来处理用户配置文件。我遇到的问题是尝试对提供的表单进行样式设置。我引用pinax-theme-bootstrap来创建模板,并为大多数必需的模板提出了这个:

将css类添加到所有<label>s和字段的最佳方法是什么。将类添加到单个<input>标签的最佳方法是什么?是否可以在 django-user-accounts 之类的第三方应用程序上使用清晰的表单?

0 投票
1 回答
60 浏览

django - 如何在 Django 中自动更改 IntegrityError 上的数据库输入?

我正在使用模型表单让用户将数据放入数据库。此表单不包括用户字段,因此用户无法自行更改。

相反,用户字段的值将在我调用 .save(commit=False) 后输入。

因此,用户字段被排除在验证之外。现在 user 字段和另一个 char 字段之间有一个 unique_together 。

由于排除了用户字段,因此不会对 unique_together 进行验证。因此,在保存实例时可能会出现 IntegrityError。

我被困在哪里: 所以我的第一个想法是检查数据库是否 CharField 已经存在,如果是这样,只需通过添加一个数字来更改它并再次检查。但是如果我向上计数,攻击者可能会插入很多类似的字符串,所以我的服务器必须无限期地做这个检查。

可能的解决方案: 所以对我来说有两个可接受的解决方案:要么将 CharFields 值更改为绝对不存在的东西,而无需先尝试很多。或者使验证失败并将表单返回给用户。

我尝试了什么: 我认为第二个是理想的,但是由于我使用的是模型表单集并且无法将请求用户传递给表单,所以我无法这样做: Django's ModelForm unique_together validation

相反,我想知道是否可以在循环表单集时将自制错误添加到表单中。

有点像这个伪代码:

任何想法如何解决这个问题?如果你读到这里,谢谢你的帮助:)

0 投票
0 回答
43 浏览

python - 从多个模型中检索所有相关对象时,如何限制查询数量?

假设我有这个模型:

现在想象有 1.000.000.000 MyLogModel 和十倍以上的 MoreLogModel 与它们相关。

在我看来,我想向用户展示最新的 100 个 MyLogModel 以及与它们相关的 MoreLogModel 的所有“单词”字段。每个 MyLogModel 平均应该有 10 个 MoreLogModel。

但如果我只是使用(伪代码):

然后在模板中循环遍历它总是放置另一个循环:

这会导致大量的数据库查询,对吧?

所以我想知道的是是否可以查询所有 MyLogModel 以及已经在附加到该模型的列表中的相关“more_log_models”?

我有外键关系的原因是因为数据来自一个多线程的服务器进程,并且只要感觉它就会输入“单词”。

那么有什么想法可以解决这个问题吗?

另外: 我之前使用的另一种方法是只有一个模型,它有一个单词字段和一个 group_id。那么这个词字段只包含一个词,每个词都有一个条目。这会导致“log_stuff”被复制,但我认为这没有什么大问题。一个大问题是遍历所有这些日志并根据组 ID 组合它们,然后再次根据时间对它们进行排序。最后,这会导致更少的查询,但我必须至少对所有内容进行两次排序,这不是很快。

0 投票
0 回答
1329 浏览

python - 将 kwargs 从 CreateView 传递到 ModelForm?

我正在尝试将一个 kwarg 从 CreateView 传递给 ModelForm,以便我可以根据相关 Parent 对象中的值动态调整字段。其他答案表明,通过在视图中覆盖get_form_kwargs并在表单中使用kwarg.pop捕获它来传递 kwarg 应该可以工作,但是当我尝试时我得到一个AttributeError: 'ChildForm' has no attribute 'get' 。将 kwarg 传递到视图上下文中是可行的,但不允许我访问表单实例中的值。

模型.py:

视图.py:

表格.py:

完整的追溯在这里:http ://dpaste.com/2QBMRJX

0 投票
3 回答
12254 浏览

python - django 中的自定义用户引发 ValueError

即使这个简单的例子ValueError: Dependency on app with no migrations: myApppython manage.py syncdb

myApp/models.py

设置.py


./manage syncdb在 django==1.6.5 <<中运行

./manage syncdb在 django==1.7 <<中运行

我无法在 1.7 的文档中找到任何说明这应该与 1.6 不同的内容。看起来其他一些人也有这个问题,但由于运行./manage.py migrate --list

有没有人遇到过这个?

0 投票
1 回答
864 浏览

django - django 对 contrib.sites 的数据迁移依赖

我想将站点添加到我的一项数据迁移的依赖项中。

但我得到了

以前有人这样做过吗?谢谢。

0 投票
2 回答
37396 浏览

python - ProgrammingError: 安装 Psycopg2 后,关系“django_session”不存在错误

我开始开发基于 Django 的 Web 应用程序。一切都很好,直到我Psycopg2为我创建的数据库安装了PostgreSql. 现在,当我试图打开我网站中的任何页面时,它会引发ProgrammingError: relation "django_session" does not exist错误。

这是我的数据库设置settings.py

我正在开发virtualenvs

知道如何解决这个问题吗?谢谢

0 投票
1 回答
2266 浏览

python - django模型线程安全吗?

我曾经使用基于 django 的前端填充数据库,然后使用我的守护程序软件中的数据直接访问 mysql 数据库。

现在我想将django模型直接集成到daemon软件中,让开发更容易。

所以写了这个类:

现在我想知道:这个线程安全吗?

我可以从该类创建一个对象并将其传递给多个线程吗?

当我添加写入数据库的函数时,这会保持不变吗?

0 投票
1 回答
1735 浏览

django - Django 1.7、uwsgi 和 PostgreSQL 的随机数据库错误

将我的 Django 1.6 应用程序升级到 Django 1.7 后,我在从 PostgreSQL 获取数据时开始出现随机错误:

当我在浏览器中快速打开 10 个选项卡时,一半的选项卡正常加载,其中一半出现 DB 错误。当我刷新发生错误的选项卡时,它们会正常加载。

我通过uwsgi和nginx运行Django,psycopg2的版本是2.5.4。

总体而言,与 Postgres 的通信似乎以某种方式完全中断,并且不同查询的结果混合在一起。


编辑:

经过几个小时的故障排除后,我发现了以下内容:

Django 1.6 +
uwsgi - 工作 Django 1.7 + gunicorn - 工作
Django 1.7 + uwsgi - 不工作,引发数据库错误。所以问题似乎出在特别是 uwsgi 和 Django 1.7 的组合上。这很奇怪,我有另一个 Django 1.7 项目在具有相同 uwsgi 的同一台服务器上运行,它没有问题。

有任何想法吗?

(我真的不介意切换到 gunicorn,可能不得不走这条路,但为什么会发生这种情况仍然很有趣)


更新 2:仔细检查显示 Django 内部发生了完全疯狂的事情,比如模型的主键被当前用户的 session_id 替换(这是“invalid literal for int() with base 10”错误的来源)和 Django 向 DB 发出查询“忘记" 来指定 WHERE 子句。我可能会称之为某种内存损坏。


更新 3:我们从 uwsgi 切换到 gunicorn,问题现在消失了。一切都很好。不过,我可能仍在寻找合适的解决方案。