2
我有一個問題,當我嘗試上傳文件我試圖顯示用戶上傳文件,但不工作。模型沒有迭代「由用戶創建」django
我的模型是這樣的:
class Document(models.Model):
id = models.AutoField(primary_key=True)
programa=models.CharField(max_length = 100)
materia=models.CharField(max_length = 50)
profesor=models.CharField(max_length = 50)
usuario=models.ForeignKey(Usuario)
add=models.DateTimeField (auto_now = True)
archivo= models.FileField(upload_to="archivos/",storage=OverwriteStorage(),null = False)
def __unicode__(self):
return self.programa
class Meta:
db_table = u'utp_document'
我的看法是:
@login_required(login_url='/')
def upload(request):
if request.method=='POST':
form=DocumentForm(request.POST,request.FILES,)
if form.is_valid():
instances = form.save(commit=False)
for instance in instances:
instance.usuario = request.user
instance.save()
return HttpResponseRedirect('/menu/')
else:
form=DocumentForm()
return render_to_response('formulario_modal.html', {'form': form}, context_instance=RequestContext(request))
我跟着這個帖子Django - Auto populate created_by field outside django admin using form。
,這我form.py:
class DocumentForm(forms.ModelForm):
class Meta:
model = Document
exclude = ('usuario',)
的問題是什麼,我嘗試新的上傳文件得到這個錯誤:
'Document' object is not iterable
我在做什麼錯?
但我得到的錯誤,我一直在試圖解決這個問題是「不能分配」>「:」Document.usuario「必須是」Usuario「實例。 –
papo
2015-04-02 23:42:33
@papo這是更好的和不同的問題。你能說明'Usuario'模態是如何定義的嗎?謝謝。 – alecxe 2015-04-02 23:43:28
類UsuarioForm(forms.ModelForm): 類元: 模型= Usuario 字段= [ 'nombres', '郵報']等於DocumentForm – papo 2015-04-02 23:49:34