0
これは私のモデルであるベースにModelChoiceFieldを保存しない:Djangoは
class User(models.Model):
name = models.CharField(max_length=50)
mail = models.CharField(max_length=50)
nickname = models.CharField(max_length=50)
def __str__ (self):
return self.name
class Post(models.Model):
title = models.CharField(max_length=200)
lead = models.CharField(max_length=10, default='default')
text = models.TextField()
created_date = models.DateTimeField(
default=timezone.now)
published_date = models.DateTimeField(
blank=True, null=True)
user = models.ForeignKey(User, related_name="User", null=True)
def publish(self):
self.published_date = timezone.now()
self.save()
def __str__(self):
return self.title
これが私の見解です:
def post_new(request):
if request.method == "POST":
form = PostForm(request.POST)
if form.is_valid():
post = form.save(commit=False)
post.published_date = timezone.now()
post.save()
return redirect('post_detail', pk=post.pk)
else:
form = PostForm()
return render(request, 'post_new.html', {'form': form})
は、これが私のforms.pyです:
class PostForm(forms.ModelForm):
selectuser = forms.ModelChoiceField(queryset=User.objects.all())
class Meta:
model = Post
fields = ('title','lead', 'text',)
class UserForm(forms.ModelForm):
class Meta:
model = User
fields = ('name','nickname','mail')
私の問題はあるがModelChoiceFieldから選択された値は空のフィールドだけを値なしで保存しています。その問題を解決するのに手伝ってもらえますか?
私の問題はModelChoiceFieldから選択した値が値だけで空のフィールドなし ベースに保存されていることです。 問題を解決するのに手伝ってもらえますか?
また、フォームのメタクラスの 'fields'タプルにも含めます。 –
それはとても簡単でした!助けてくれてありがとう! – Soltys