Я новичок в django-cms, и я пытаюсь создать placeholder вне cms. Я создал модель и вставил некоторые фиктивные данные для тестирования. Затем я создал шаблон для отображения этой модели и проверил, удалось ли мне редактировать его в интерфейсе. Вот мой HTML-код, где я получаю сообщение об ошибке:Ошибка: NoReverseMatch при использовании render_model
{% load i18n staticfiles thumbnail cms_tags %}
<article class="article">
<h2>
{% render_model article "title" %}
</h2>
<p>{{ article.creation_date|date }}</p>
{% if detail_view %}
{% render_placeholder article.content language placeholder_language %}
{% endif %}
</article>
Ошибка я получаю это:
NoReverseMatch at /en/news/
Reverse for 'cms_myapp_news_change' with arguments '(5L,)' and keyword arguments '{}' not found. 0 pattern(s) tried: []
И эта ошибка hapening в render_model
линии. (Я прокомментировал каждую строку, чтобы проверить, где именно происходит исключение.)
Я добавил URL в мой список, чтобы увидеть, если будет работать:
url(r'^news/(?P<pk>\d+)/$', login_required(v_index.news), name='news_change')
Но до сих пор точно такую же ошибку.
Знаете ли вы, что такое hapenning?
EDIT:
Вот моя модель:
class News(models.Model):
id = models.AutoField(db_column='ID', primary_key=True)
title = models.TextField(verbose_name=_(u'Title'), db_column='TITLE')
description = models.TextField(verbose_name=_(u'Description'), db_column='DESCRIPTION')
creation_date = models.DateTimeField(db_column='CREATION_DATE', verbose_name=_(u'Creation Date'), auto_now_add=True)
content = PlaceholderField('news_content',
related_name='news_content')
class Meta:
app_label = 'cms_myapp'
ordering = ['-creation_date']
verbose_name = _(u'New')
verbose_name_plural = _(u'News')
UPDATE:
Я пытался настроить админ часть для этой модели, поэтому я добавил файл admin.py
: (и удалена url, указанный выше)
from cms.admin.placeholderadmin import FrontendEditableAdminMixin
from django.contrib import admin
from cms_myapp import models
class NewsAdmin(FrontendEditableAdminMixin,admin.ModelAdmin):
frontend_editable_fields = ("title", "description")
admin.site.register(models.News, NewsAdmin)
Но все же я получаю ту же ошибку.
Вы передаете 'pk' в любом месте вашего шаблона или вида? – jape
@jape Я передаю объект. Нужно ли мне также передавать pk? Можете ли вы привести пример? – patricia
У вас есть админ без '' '? 'url (r '^ admin /', include (admin.site.urls)),' –