2017-06-28 8 views
1

私model.pyは、私は3 を可能と認証されたユーザが質問アスカーであることを確認するための選択肢の最大量tomakeビューを編集する方法をユーザーとフォームビューを作成する方法は、外部キーであり、1つのモデルは別のモデルと外部キー関係を持っていますか?

from django.db import models 
from django.contrib.auth.models import User 

class Question(models.Model): 
    asker = models.ForeignKey(User, related_name='questions') 
    question_text = models.CharField(max_length=200) 
    pub_date = models.DateTimeField('date published') 


class Choice(models.Model): 
    question = models.ForeignKey(Question, on_delete=models.CASCADE) 
    choice_text = models.CharField(max_length=200) 
    votes = models.IntegerField(default=0) 

forms.py

from django.forms import ModelForm 
from django.forms import inlineformset_factory 
from .models import Question,Choice 

class PollForm(ModelForm): 
    class Meta: 
     model = Choice 
     exclude =() 
postinline=inlineformset_factory(Question, Choice, form=PollForm, extra=1) 

です事前に おかげで

答えて

1

はたぶん、あなたはこの

def post_create(request): 
    form = ModelForm (request.POST or None, request.FILES or None) 
    user = User.objects.get(username=request.user.username) 

    if form.is_valid(): 
     instance = form.save(commit=False) 
     instance.asker= user 
     instance.save() 

    context = { 
     "form": form 
    } 

    return render (request,"blog/create.html",context) 
ような何かをしたいです
+0

レンダリング部分を無視する私のプロジェクトの1つからこのスニペットを取り出します –

+0

どのようにインラインフォームを統合できますか –

+0

どのようにしたいのですか、ドロップボックスで名前を選択するか、何をしますか? –

関連する問題