1

django-tinymce を使用してフォームのフィールドのスタイルを設定しようとしていますが、フォームに通常の CharField が表示されるだけなので、成功しません。テスト フォームは、Django クリスピー フォームでレンダリングされたフォームセットの一部です。

models.py

class test(models.Model)
  test = models.CharField(max_length=100)

フォーム.py

from tinymce.widgets import TinyMCE


class TestForm(forms.ModelForm):


  class Meta:
    test = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))
    model = test

  def __init__(self, *args, **kwargs):
    super(TestForm, self).__init__(*args, **kwargs)
    self.helper = FormHelper()
    self.helper.form_tag = False
    self.helper.layout = layout.Layout(
        layout.Fieldset(
            _("Test"),
            layout.Field("test"),
            ),
      )

urls.py

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'tripller.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),
    url(r'^tinymce/', include('tinymce.urls')),
)

テンプレート

{% load i18n crispy_forms_tags %}
        <form method="post" action="." enctype="multipart/form-data">
          {% csrf_token %}
          {% crispy form %}
          {{ formset.management_form }}
                {{ formset.non_form_errors }}
                {% for form in formset %}
                    {{ form.id }}
                    <div class="inline {{ formset.prefix }}">   
                        {% crispy form %}
                        {{ form.description.errors }}
                        {{ form.description.label_tag }}
                        {{ form.description }}
                    </div>
                {% endfor %}
         </form>

設定.py

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'ajaxuploader',
    'crispy_forms',
    'tinymce',
)

TINYMCE_JS_URL = os.path.join(STATIC_ROOT, "js/tiny_mce/tiny_mce.js")
TINYMCE_JS_ROOT = os.path.join(STATIC_ROOT, "js/tiny_mce")
TINYMCE_SPELLCHECKER = True
TINYMCE_COMPRESSOR = True
TINYMCE_DEFAULT_CONFIG = {
    'theme': "advanced",
    'plugins': "spellchecker",
    'theme_advanced_buttons3_add': "|,spellchecker",
}
  1. ドキュメントで提案されているように、これは静的ファイルの URL を指定する正しい方法ですか? パラメータが正しく定義されていないために CharField が機能していませんか?

  2. TinyMCE エディターを使用して表示される Textfield を指定するにはどうすればよいですか?

  3. ユーザーが TinyMCE を介してフォームの編集を終了すると仮定すると、送信されたデータを html フォームとして表示するにはどうすればよいですか?

4

2 に答える 2

1

フィールド定義は、TestFormレベルではなく、レベルである必要がありますTestForm.Meta:

class TestForm(forms.ModelForm):

    test = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))

    class Meta:
        model = test
于 2015-01-18T10:50:02.393 に答える