0
저는 현재 장고로 소셜 플랫폼을 만들고 있습니다. 지금은 대시 보드를 개발 중이며 최종 사용자가 자신의 게시물을 게시 할 수있게하려고합니다. 포스트 모델양식 제출이 새 게시물 개체를 생성하지 않습니다.
class Post(models.Model):
user = models.ForeignKey(User)
posted = models.DateTimeField(auto_now_add=True)
content = models.CharField(max_length=150)
Likes = models.IntegerField(default=0)
def __str__(self):
return self.user.username
내 양식 :
양식이 제출됩니다class Post_form(forms.ModelForm):
class Meta:
model = Post
fields = (
'content',
]
def __init__(self, *args, **kwargs):
super(Post_form, self).__init__(*args, **kwargs)
self.fields['content'].label = ""
self.fields['content'].widget.attrs={
'id': 'id_content',
'class': 'myCustomClass',
'name': 'name_content',
'placeholder': 'What are you thinking about?',
}
이 제대로 내용 필드의 값과 POST 요청을 생성이 내 포스트 모델입니다. 내 양식을보기에 저장하면 새 게시물이 생성되지 않습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
내 views.py : 당신은 포스트 형태로 인스턴스 매개 변수로 사용자를 통과 할 수
def dashboard_view(request):
if request.POST:
form = Post_form(data=request.POST, instance=request.user)
if form.is_valid():
form.save() // <- no new post gets generated after saving
return redirect(reverse('dashboard'))
else:
return redirect(reverse('settings'))
else:
form = Post_form
gebruikers = User.objects.all()
all_posts = Post.objects.all().order_by('-posted')
return render(request, 'Dashboard/index.html', {'gebruiker':gebruikers, 'posts':all_posts, 'form': form},)