2016-05-15 3 views
0

Я следовал учебнику qblog, используя python 2.7.10 и django 1.9.5.TemplateDoesNotExist: django_markdown/editor_init.html

Когда я войти в интерфейс блога админа, и нажал добавить запись в блог, то он показал мне ниже:

TemplateDoesNotExist at /admin/blog/entry/add/ 
django_markdown/editor_init.html 

, но я установил Джанго-уценки уже. Я хотел бы показать код ниже:

models.py:

class Entry(models.Model): 
    title = models.CharField(max_length=200) 
    body = MarkdownField() 
    slug = models.SlugField(max_length=200, unique=True) 
    publish = models.BooleanField(default=True) 
    created = models.DateTimeField(auto_now_add=True) 
    modified = models.DateTimeField(auto_now=True) 
    tags = models.ManyToManyField(Tag) 

    objects = EntryQuerySet.as_manager() 

    def __str__(self): 
     return self.title 

    def get_absolute_url(self): 
     return reverse("entry_detail", kwargs={"slug": self.slug}) 

    class Meta: 
     verbose_name = "Blog Entry" 
     verbose_name_plural = "Blog Entries" 
     ordering = ["-created"] 

admin.py:

from django.contrib import admin 
from . import models 
from django_markdown.admin import MarkdownModelAdmin 
from django_markdown.widgets import AdminMarkdownWidget 
from django.db.models import TextField 


class EntryAdmin(MarkdownModelAdmin): 
    list_display = ("title", "created") 
    prepopulated_fields = {"slug": ("title",)} 
    # Next line is a workaround for Python 2.x 
    formfield_overrides = {TextField: {'widget': AdminMarkdownWidget}} 

admin.site.register(models.Entry, EntryAdmin) 
admin.site.register(models.Tag) 

qblog/urls.py:

from django.conf.urls import patterns, include, url 
from django.contrib import admin 
import settings 

urlpatterns = patterns(
    '', 
    url(r'^admin/', include(admin.site.urls)), 
    url(r'^markdown/', include("django_markdown.urls")), 
    url(r'^', include('blog.urls')), 
) 

if settings.DEBUG: 
    from django.conf.urls.static import static 
    urlpatterns += static(settings.STATIC_URL,document_root=settings.STATIC_ROOT) 
+0

Вы уверены, что django-pack поставляет 'django_markdown/editor_init.html' шаблон с ним? Проверьте, существует ли файл в установленном пакете. – v1k45

+0

Вы добавили 'django_markdown' в' INSTALLED_APPS' в settings.py? – ozgur

+0

@ozgur да, мой друг, я добавлю его в 'INSTALLED_APPS' –

ответ

0

Вам нужно для добавления файла editor_init.html в ваш проект.

Если ваш корень проекта равен project/, там должен быть каталог под названием templates. Если этот каталог не существует, создайте его (так что путь будет project/templates).

Вставьте файл editor_init.html в этот каталог и все должно сработать.

Дополнительную информацию о настройке шаблонов here и в django docs.

+0

плохой ответ. здесь отсутствует шаблон библиотеки. причина в другом месте, и это всего лишь хулиганский хак, который позже затронет вас ... (возможность обновления и т. д.) – patroqueeet

+0

@patroqueeet Хм, вы на самом деле совершенно правы. Если вы найдете решение, не стесняйтесь его добавлять;) – Bono

+0

шаблон есть: https://github.com/klen/django_markdown/blob/master/django_markdown/templates/django_markdown/editor_init.html - следовательно, если ваша установка правильно, вы, вероятно, поговорите с сопровождающим пакета. пакет (django_markdown), по крайней мере, работает отлично для меня. Я могу поделиться своим conf, если это поможет вам ... – patroqueeet