问题标签 [modelform]
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 ModelForm 中文件的文件名
我有一个带有 FileField 的 ModelForm 以及其他字段。我想在调用 myform.save() 时修改文件名以避免冲突(在文件名中插入 6 个随机字符)。在 Django 中执行此操作的正确方法是什么?
python - Django将字段添加到模型 - 字段未显示在表单上
我整晚都在寻找这个问题的答案,但似乎找不到问题所在。
我正在将自定义 CMS 移植到 Django,基本上它具有以下结构:
- 一个条目有 1 个布局
- 一个布局有很多部分
因此,在用户创建并输入之后,当他们编辑它时,我想显示该布局中包含的所有部分。
所以我从条目中获取布局 ID,循环并获取部分,并尝试将它们添加到表单中。
当我调试它时,看起来一切都被添加到字段对象中,但它不会显示在表单上,除非我预定义字段,这会破坏目的
我在这里遵循了几个示例并获得了以下代码:
我调试和打印 self.fields 的示例
我可以看到我添加的字段与模型中已经存在的字段的明显差异:'legacy_import': <django.forms.fields.TypedChoiceField object at 0x1c32c90>, 'section': <django.db.models.fields.CharField>,
但不知道如何纠正这个问题。
django - 通过覆盖 ModelForm 和 ModelChoiceField 连接两个模型的值
为了在 Django AdminForm 的 ForeignKey 选择框中仅显示相关的项目,我使用 ActionAdminForm 类自定义了我的 ActionAdmin 模型。为了预选值,我使用了类似此处发布的类https://stackoverflow.com/a/9191583/326905。非常感谢,这真的很好。
但是,当用户不导航表单客户 - > 项目 - > 操作并直接导航到 django admin 中的操作时,我想在 ActionAdmin 表单中显示外键项目的选择框中的值,格式如下:
客户名称 1 - 项目名称
1 客户名称 1 - 项目名称 2
客户名称 2 - 项目名称 3
我的问题是,如何
在下面的代码中的 else 情况下覆盖 self.fields["project"] ,
以便获得从
Project.customer.name 和 Project.name 连接的选择框值?
django - ModelForm 用户混合
我有一些带有用户字段的模型。
为此,我想创建一个表单 mixin 来添加self.user
实例(在视图中提供给表单)。可能吗 ?
这是示例
我想达到的目标:
问题是 UserFormMixin 不知道模型实例?还是我在这里错了?我遇到了一些问题..比如'commit' kwargs key error..或者对象没有保存..
django - 如何解决 django 的 modelform 保存问题?
我希望能够根据通过引用产品的 url 传递的参数保存表单提交的数据(而不是让用户通过下拉菜单指定产品)。关于我如何做到这一点的任何想法?
django - Django - 如何在不允许用户输入的情况下为 ModelForm 设置默认 ForeignKey 值
我用模型Page
和Mark
.
Mark
还有一个ModelForm
类MarkForm
,我告诉过它要将它的所有属性显示为小部件,除了ForeignKey
,它是editable=False
. Page
和Mark
- one Page
, many之间存在一对多的关系Marks
。
但是,当我尝试提交MarkForm
时,它会提示该ForeignKey
字段不能为空 - 有没有办法自动告诉表单(在服务器端),这样就不会在 html 中输出表单(我不希望用户能够摆弄和添加marks
到其他Pages
)。
如果我遗漏了什么,请告诉我,也许我在模型或视图中做错了什么。这是一些代码:
django - 如何在不插入的情况下更新 Django modelform?
我的 Django 代码插入新行而不是更新现有行时遇到问题。这里的许多人都曾就类似问题寻求帮助,但通常他们忘记设置instance
为form = SomeModelForm(request.POST or None, instance=some_model_instance)
. 我似乎做得对,但它仍然没有保存现有数据。
另一张海报也有完全相同的问题(当我想要 UPDATE 时,请参阅 Django 表单 INSERTs)。看起来给他解决问题的代码解决了这个问题,但是当他问到时,没有人解释为什么它会起作用!
看法
更新事件()
谁能帮我吗?我错过了一些非常基本的东西吗?
编辑:澄清一下,我的所有表格都没有更新,所有表格都在插入。根据丹尼尔的建议,我认为我需要使用表单集来链接正在编辑的所有三个模型表单。
django - 使用 django ModelForm 显示错误
我无法弄清楚如何控制 ModelForms 的字段验证。
这是我的模型表格:
这是我在模板中呈现表单的方式:
这是我的看法:
从阅读文档来看,这似乎应该像向我的表单传递一些自定义属性一样简单;但由于我正在使用 ModelForm,我不确定这是否以相同的方式实现。
谁能提供有关如何最好地控制 ModelForm 字段错误的示例或提示?
谢谢!
django - Django 在视图中设置表单初始数据
我正在尝试使用从外部源提供的初始数据填充 django modelform。为了实现这一点,我首先从外部源中提取所有需要的数据:
然后填充一个字典,它将作为我表单的初始数据:
然后我将表单传递给模板,初始数据正在按预期填充我的文本字段,但现在我需要能够根据从外部源收到的字符串设置选择字段的值,而我没有得到我怎么能做到这一点,因为做了类似的事情:
无法完成这项工作,因为选择元素具有“0”、“1”、“2”等作为选项值,而不是我从api_data_type
变量中获得的长描述。
如何从<option value="1">long_description</option>
我的视图中选择字段的所有选项中获取 long_description,以便我可以将每个选项与api_data_type
?
下面是我的 models.py 和 forms.py 的示例:
python - 在表单中,如何使用外键显示来自其他模型的字段,特别是带有选项的字段?
我正在制作一个ModelForm
有两个模型的测试表格。
Country
Email
我正在创建一个基于Email
模型的表单。该Country
模型具有名称字段,其值由COUNTRIES
列表给出。我想在EmailForm
所有COUNTRIES
值中显示名称字段。我必须使用外键吗?请指导。
我的模型如下所示:
如果我从中生成一个表格。它显示一个空白的下拉菜单。如何从列表中获取值?