Django 表单前缀与基于类的通用视图
如何使用 Django 1.3 中新的基于类的通用视图设置表单前缀关键字?设置前缀可以防止渲染的 HTML 中出现重复的 id。 此处记录了表单 API 。
由于我使用 AJAX 加载了多个不同的表单,因此我遇到了重复标签的问题。
How can I set the form prefix keyword with the new class-based generic views in Django 1.3? Setting the prefix prevents duplicate id in the rendered HTML. This is documented here for the forms API.
Since I have several different forms loaded using AJAX, I am running into problems with duplicate tags.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我看到你的问题了!您正在尝试使用
FormView
,它允许您指定form_class
,但不能指定前缀。我还没有尝试过这个,但我建议子类化
FormView
或您正在使用的任何内容,并覆盖get_form_kwargs
方法以添加前缀。您可以执行类似的操作这样:
然后,我想,您将能够将
form_prefix
放入 urlconf 中MyFormView.as_view
的参数中。正如我所说,我还没有尝试过这个,但它可能值得一试 - 让我知道它是否有效!
I see your problem! You're trying to use
FormView
, which lets you specifyform_class
, but not a prefix.I haven't tried this, but I suggest subclassing
FormView
, or whatever you're using, and overriding theget_form_kwargs
method to add the prefix in.You could do something like this:
Then, I think, you'll be able to put
form_prefix
in the arguments toMyFormView.as_view
in your urlconf.As I say, I haven't tried this, but it might be worth a go - let me know if it works!
我在 django 中打开了一张票,附有一个补丁,它修改了 FormMixin,以使 FormView 的行为符合您的意愿。
https://code.djangoproject.com/ticket/18872
I opened a ticket in django, with a patch attached, that modifies FormMixin, in order to make FormView behave like you wish.
https://code.djangoproject.com/ticket/18872