rsp*_*rsp 8 django django-forms django-generic-views django-class-based-views
我在我的模型中使用了Django的通用createview
from myproject.app.forms import PersonForm
class PersonMixin(object):
model = Person
form_class = PersontForm
class PersonCreateView(PersonMixin, CreateView):
pass
Run Code Online (Sandbox Code Playgroud)
这非常适合用我的自定义表单显示Person的创建视图.但是,我有一个字段,我希望预先填充一个值.我找到了这个答案:在基于类的通用视图中将初始值设置为modelform
但是,我预先填充的值来自request.user的配置文件.如何在PersonCreateView中访问请求并将其传递给表单?
jon*_*man 36
在任何类方法中,您都可以使用self.request访问请求.因此,您可以使用self.request.user访问您的用户个人资料.
在您提供的链接的基础上,您可以在get_initial方法中使用self.request.user来设置值.
即.
def get_initial(self):
return { 'value1': self.request.user }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11568 次 |
| 最近记录: |