列' user_id'尝试使用Django发布时不能为null

时间:2016-01-30 12:25:49

标签: django

我已经解决了这个错误一段时间了,我无法弄清楚我需要做什么......这是错误:

(1048, "Column 'user_id' cannot be null")

我基本上想要的是能够将内容发布到blog_blogposts表到我的数据库。我正在使用Mezzanine。

views.py:

@user_passes_test(lambda u:u.is_active, login_url='/accounts/login/')
def admin_post_new(request):
    #post = get_object_or_404(User, pk=user_id)
    if request.method == "POST":
        form = BlogPostForm(request.POST)
        if form.is_valid():
            post = form.save(commit=False)
            post.author = request.user
            post.user = request.user.pk
            post.published_date = timezone.now()
            post.save()
            return redirect('admin_post_list', pk=post.pk)
    else:
        form = BlogPostForm()
    return render(request, (settings.PROJECT_ROOT + "/main/templates/admin/admin_post_new.html"), {'form': form})

forms.py:

class BlogPostForm(forms.ModelForm):
    content = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))
    #
    class Meta:
        model = BlogPost
        fields = ('title', 'content')

admin_post_new.html:

<div class="panel panel-default">
  <div class="panel-body" style="padding:0;">
  <form method="POST" class="post-form">{% csrf_token %}
    {{ form.as_p }}
    <button type="submit" class="save btn btn-default">Save</button>
  </form>
  </div>
</div>

0 个答案:

没有答案