gpt4 book ai didi

python - Django - 自动填充非空白表单字段

转载 作者:太空宇宙 更新时间:2023-11-04 01:35:50 25 4
gpt4 key购买 nike

让我们考虑一下这个模型

class Session(models.Model):
tutor = models.ForeignKey(User)
start_time = models.DateTimeField()
end_time = models.DateTimeField()

我正在尝试发布 start_timeend_time 的值,并自动为 tutor 提供当前登录的用户。

我的表单实际上只管理 start_timeend_time

class SessionForm(forms.ModelForm):
class Meta:
model = Session
exclude = ['tutor']

我的 View 添加了tutor:

def post(request):
"""Session post"""
if request.method == 'POST':
form = SessionForm(request.POST)
form.tutor = request.user
if form.is_valid():
form.save()
obj = {'posted': True}
return HttpResponse(json.dumps(obj), mimetype='application/json')
else:
return render_to_response('planner/editor.html',
form, context_instance=RequestContext(request),)

我得到一个

Column 'tutor_id' cannot be null

我做错了什么?

最佳答案

.将导师设置为form.instance

代替:

form.tutor = request.user
if form.is_valid():
form.save()

你应该:

form.instance.tutor = request.user
if form.is_valid():
form.save()

但个人而言,我宁愿在 form.is_valid() 之后、form.save() 之前调整 form.instance。

关于python - Django - 自动填充非空白表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9908604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com