Здравствуйте изучаю djangocms и наткнулся на такой топик https://github.com/mkoistinen/staff-...e/master/staff , здесь все модули реализованные в этой теме https://github.com/mkoistinen/staff-app-demo тут также есть ссылки на нужные ресурсы и видео где все это подробно описывается. В начале пишется просто модуль для django который будет тоступен в адмике для редактриования, а так же на сайте через прописынные юрлы, это сначала, потом уже через классы djangocms сделать доступным для адмики сайта без прописывания юрлов, но у меня загвоздка получилась на ночальном этапе, вся основная сложность в view.py так как я раньшь реализовывал шаблоны через render_to_response а здесь через классы ListView и DetailView, а остальное оталось как и прежде. Я набираю нужный юрл в адресной строке, а в итоге получаю что нет такого адреса. Не могу найти где ошибка, в общем вот код на всякий случаю вылажу ссылку на пасту http://pastebin.com/dP4JG6ni
#admin.py
# -*- coding: utf-8 -*-
from django.contrib import admin
from .models import Seniority, StaffMember
class SeniorityAdmin(admin.ModelAdmin):
pass
admin.site.register(Seniority, SeniorityAdmin)
class StaffMemberAdmin(admin.ModelAdmin):
pass
admin.site.register(StaffMember, StaffMemberAdmin)
#model.py
# -*- coding: utf-8 -*-
from django.core.urlresolvers import reverse
from django.db import models
from filer.fields.image import FilerImageField
class Seniority(models.Model):
class Meta:
app_label = 'staff'
verbose_name_plural = 'seniorities'
label = models.CharField(
u'label',
blank=False,
default='',
help_text=u'Please provide a label for this seniority',
max_length=64,
unique=True,
)
def __unicode__(self):
return self.label
class StaffMember(models.Model):
class Meta:
app_label = 'staff'
full_name = models.CharField(
u'full name',
blank=False,
default='',
help_text=u'Please enter a full name for this staff member',
max_length=64,
#unique=True,
)
slug = models.SlugField(
u'slug',
blank=False,
default='',
help_text=u'Provide a unique slug for this staff member',
max_length=64,
)
seniority = models.ForeignKey(
'staff.Seniority',
blank=True,
default=None,
help_text=u'Please specify a seniority level for this staff member',
null=True
)
photo = FilerImageField(
blank=True,
help_text=u'Optional. Please supply a photo of this staff member.',
null=True,
on_delete=models.SET_NULL, # Important
)
bio = models.TextField(
'bio',
blank=True,
help_text=u"Please provide this staf-member's bio.",
)
def absolute_url(self):
return reverse('staffstaffmember_detail', kwargs={'slug': self.slug, })
def __unicode__(self):
return self.full_name
urls.py
# -*- coding: utf-8 -*-
from django.conf.urls import patterns, url
from .views import StaffListView, StaffDetailView
urlpatterns = patterns('',
# List View
url(r'^$', StaffListView.as_view(), name='staffmember_list'),
# Detail View
url(r'^(?P<slug>[^/]+)/$', StaffDetailView.as_view(), name='staffmember_detail'),
)
#views.py
# -*- coding: utf-8 -*-
from django.views.generic import DetailView, ListView
from .models import StaffMember
class StaffListView(ListView):
model = StaffMember
queryset = StaffMember.objects.all()
class StaffDetailView(DetailView):
model = StaffMember
context_object_name = 'staff'
#mysite.urls.py main url
url(r'^staff/', include('staff.urls')),