提交按钮在 Django 中没有任何操作

问题描述 投票:0回答:1

我的项目中有 3 个模型,在输入表单的所有输入后按下提交按钮时,没有表单显示任何操作。
表格.py

class BlogForm(forms.ModelForm):
    class Meta:
        model = BlogPost
        fields = ['title', 'slug', 'thumbnail', 'body', 'status', 'is_subsriber', 'meta', 'author']

模型.py

class BlogPost(models.Model):
    author = models.ForeignKey(Author, on_delete = models.CASCADE)
    title = models.CharField(max_length = 999, unique = True)
    slug = models.SlugField(max_length = 999, unique = True)
    thumbnail = ProcessedImageField(upload_to='article', format='JPEG', options={'quality': 60})
    body = CKEditor5Field(config_name='extends')
    meta = models.TextField()
    status = models.CharField(max_length = 10, choices = blogstatus, default = "DF")
    is_subsriber = models.BooleanField(default = False)
    created_on = models.DateTimeField(auto_now_add = True)
    published_on = models.DateField(auto_now = True)
    modified_on = models.DateField(auto_now = True)

views.py

def article_form(request):
    if request.method == "POST":
        form = BlogForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            return redirect("home")
    else:
        form = BlogForm()
    return render(request, 'article/post-form.html', {"form":form})

index.html

<form class="form" method="post">
                        {% csrf_token %}
                        {{form.as_p}}
                        <button type="submit">Publish</button>
                    </form>


这只是一种模型及其形式。我已经尝试在 html 表单中使用操作,但它仍然不起作用。
django django-views django-forms
1个回答
0
投票

在您的模板中,您的表单缺少操作属性。它应该看起来像这样:

<form class="form" method="post" action="{% url 'name of the url pattern to your view' %}">
    {% csrf_token %}
    {{form.as_p}}
    <button type="submit">Publish</button>
</form>
© www.soinside.com 2019 - 2024. All rights reserved.