视图.py:无法通过用户的电子邮件id在数据库中设置From的值,从该HTML表单上载文件不起作用,但在管理面板中它正常工作
def compose_msg(request):
if request.method == 'POST':
form = MessageForm(request.POST, request.FILES)
if form.is_valid():
form.From = request.user.email //Cant Set the value by this in Databse//
instance = Message(File= request.FILES["File"])
instance.save()
return HttpResponseRedirect('/Portal/compose/')
else:
form = MessageForm()
context = {
"form":form,
}
return render(request,"form.html",context)
表单.py
^{pr2}$模型.py:程序中使用的模型
class Message(models.Model):
subject = models.CharField(max_length=120)
To = models.EmailField(max_length=254)
From = models.EmailField(max_length=254)
message = models.TextField(blank=True,
null=True)
timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)
File = models.FileField(blank=True, null=True)
def __unicode__(self):
return self.subject
<!DOCTYPE html>
<head>
<link rel="stylesheet" href='/static/css/default.css' />
<link rel="stylesheet" href='/static/css/bootstrap.min.css' />
<script src='/static/js/jquery.min.js'></script>
<script src='/static/js/bootstrap.min.js'></script>
<title>
</title>
</head>
<body>
<div class="container">
<nav class="navbar container-fluid">
<ul class="nav nav-pills nav-justified">
<li><a href="/Portal/inbox/">Inbox</a></li>
<li><a href="/Portal/compose/">Compose</a></li>
<li><a href="/Portal/outbox/">Sent</a></li>
<a class="Logout btn btn-primary btn" href="/Portal/logout/" role="button">Logout</a>
</ul>
</nav>
<form role="form" class="form-horizontal" method="post">
<input type='hidden' name='csrfmiddlewaretoken' value='53Dtir4AphDETyjVnvMhma9T4kav9cbC' />
<div class="form-group"><label class="control-label" for="id_subject">Subject</label><input class="form-control" id="id_subject" maxlength="120" name="subject" placeholder="Subject" required="required" title="" type="text" /></div>
<div class="form-group"><label class="control-label" for="id_To">To</label><input class="form-control" id="id_To" maxlength="254" name="To" placeholder="To" required="required" title="" type="email" /></div>
<div class="form-group"><label class="control-label" for="id_message">Message</label><textarea class="form-control" cols="40" id="id_message" name="message" placeholder="Message" rows="10" title="">
</textarea></div>
<div class="form-group"><label class="control-label" for="id_File">File</label><div class="row bootstrap3-multi-input"><div class="col-xs-12"><input class="" id="id_File" name="File" title="" type="file" /></div></div></div>
<div class="form-group"><button class="btn btn-primary" type="submit">Submit</button></div>
</form>
</div>
</body>
</html>
您应该像下面这样编辑} encoding :
form
标记,因为文件上载需要^{编辑:要修改
^{pr2}$From
值,可以执行以下操作:相关问题 更多 >
编程相关推荐