Djangosumernote:如何根据模型表单使其工作?

2024-10-01 15:32:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我所做的就是基于这个:https://github.com/summernote/django-summernote
但它不起作用。在

(我设置了README中的所有内容)

urls.py

from django.conf.urls import url, include

from .views import PostListView, PostNewView, PostDetailView


app_name = 'posts'
urlpatterns = [
    url(r'^$', PostListView.as_view(), name='list'),
    url(r'^new/$', PostNewView.as_view(), name='new'),
    url(r'^(?P<pk>[0-9]+)/$', PostDetailView.as_view(), name='detail'),

    url(r'^summernote/', include('django_summernote.urls')),
]

models.py

^{pr2}$

forms.py

from django import forms
from django_summernote.widgets import SummernoteInplaceWidget

from posts.models import Post


class PostForm(forms.ModelForm):

    class Meta:
        model = Post
        fields = ('title', 'content')
        widgets = {
            'content': SummernoteInplaceWidget(),
        }

views.py

from django.views.generic import CreateView
from django.shortcuts import render, redirect

from posts.models import Post


class PostNewView(CreateView):
    model = Post
    template_name = "posts/post_edit.html"
    fields = ['title', 'content']

post_edit.html

{% extends 'chacha_dabang/skeleton/base.html' %}

{% block content %}
    <h1> New post</h1>
    <form method="POST" enctype="multipart/form-data">
        {% csrf_token %}
        {{ form|safe }}
        <button type="submit" class="save btn btn-default">Save</button>
    </form>
{% endblock %}

但如下所示: enter image description here

我想我只传递了form到模板,但在README中,它访问fieldfoobar|safe)。。实际上,我认为它不应该是foobar,因为字段是foo和{}。)

请你帮忙。谢谢


Tags: djangonamefrompyimportformurlcontent
1条回答
网友
1楼 · 发布于 2024-10-01 15:32:31

在PostNewView中,您需要添加form_类

class PostNewView(CreateView):
    model = Post
    form_class = PostForm
    template_name = "posts/post_edit.html"
    fields = ['title', 'content']

或者,可以将PostNewView中的get_form方法重写为

^{pr2}$

相关问题 更多 >

    热门问题