у tinymce есть двойное текстовое поле в блоге - PullRequest
0 голосов
/ 10 марта 2020

enter image description here

Я создаю приложение для блога через django. Выше находится форма создания поста. И Tinymce прекрасно работает, кроме текстового поля внутри текстового поля. Это может быть удалено вручную, но я хочу, чтобы это не отображалось в первую очередь. Я хочу удалить это, но я просто не могу. Что мне делать?

У меня есть эти модели, формы и html.

models.py

class BlogPost(models.Model):
    title                   = models.CharField(max_length=50, null=False, blank=False)
    body                    = HTMLField('Content')
    date_published          = models.DateTimeField(auto_now_add=True, verbose_name="date published")
    date_updated            = models.DateTimeField(auto_now=True, verbose_name="date updated")   
    author                  = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)

    #featured                = models.BooleanField()                        
    #categories              = models.ManyToManyField(Category)             

    def __str__(self):
        return self.title

    def get_absolute_url(self):                                           
        return reverse('blog:detail', kwargs={
            'id': self.id,
            'title': self.title
        })

    @property
    def get_comments(self):
        return self.comments.all().order_by('date_updated')

    @property
    def comment_count(self):
        return Comment.objects.filter(blogpost=self).count()

    @property
    def view_count(self):
        return PostView.objects.filter(blogpost=self).count()

forms.py

class CreateBlogPostForm(forms.ModelForm):
    class Meta:
        model = BlogPost
        fields = ['title', 'body']

html

{% extends 'base.html' %}


{% block content %}

<style type="text/css">
  .create-form {
        width: 100%;
        max-width: 100%;
        padding: 15px;
        margin: auto;
    }

    .submit-button{
        max-width: 200px;
    }
</style>

<div class="container">
    <div class="row">
        <div class="col-lg-7 offset-lg-1">
            <form class="create-form" method="post" enctype="multipart/form-data">{% csrf_token %}

                <!-- title -->
                <div class="form-group">
                    <label for="id_title">Title</label>
                    <input class="form-control" type="text" name="title" id="id_title" placeholder="Title" required autofocus>
                </div>

                <!-- Body -->
                <div class="form-group">
                    <label for="id_body">Content</label>
                    {{form.media}}
                    <textarea class="tinymce" rows="10" type="text" name="body" id="id_body" placeholder="This blog is about..." required> {{form.body}} </textarea>
                </div>

                <!-- Submit btn -->
                <button class="submit-button btn btn-lg btn-primary btn-block" type="submit">POST</button>
            </form> 
        </div>
    </div>
</div>

{% endblock content %}

Заранее спасибо.

1 Ответ

1 голос
/ 10 марта 2020

Когда у вас есть этот код:

<textarea class="tinymce" rows="10" type="text" name="body" id="id_body" placeholder="This blog is about..." required> 
    {{form.body}} 
</textarea>

Что содержится в переменной form.body? Я предполагаю, что у вас есть еще один textarea, поэтому вы в конечном итоге поместили textarea внутри самого TinyMCE, а не только HTML контент, который вы хотите редактировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...