0
그래서 장고 실용 프로젝트 튜토리얼을하고 있으며 매우 멀리왔다.django 튜토리얼이 붙어
def get_absolute_url(self):
return ('coltrane_entry_detail',(), {'year': self.pub_date.strftime("%Y"),
'month': self.pub_date.strftime("%b").lower(),
'day': self.pub_date.strftime("%d"),
'slug': self.slug })
get_absolute_url = models.permalink(get_absolute_url)
은 내가 들여 쓰기 오류를 얻을 :
나는이 코드를 가지고있다.
내가 작업/weblog/url을 들여 쓰기보다 "Read more"링크를 클릭하면 항상 같은 페이지/weblog/and not/weblog/date/article에 있습니다.
URL을 프로젝트 :
from django.conf.urls.defaults import *
from Myproject.views import *
from django.views.generic.simple import direct_to_template
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
#Coltrane Project URlpatterns:
(r'^search/$', 'MyProject.search.views.search'),
(r'^weblog/$', include('coltrane.urls')),
URL을 콜트레인 :
from django.conf.urls.defaults import *
from coltrane.models import Entry
entry_info_dict = {
'queryset': Entry.objects.all(),
'date_field': 'pub_date',
}
#Coltrane Project URlpatterns:
urlpatterns = patterns('django.views.generic.date_based',
(r'^$', 'archive_index', entry_info_dict, 'coltrane_entry_archive_index'),
(r'^(?P<year>\d{4})/$', 'archive_year', entry_info_dict, 'coltrane_entry_archive_year'),
(r'^(?P<year>\d{4})/(?P<month>\w{3})/$', 'archive_month', entry_info_dict, 'coltrane_entry_archive_month'),
(r'^(?P<year>\d{4})/(?P<month>\w{3})/(?P<day>\d{2})/$', 'archive_day', entry_info_dict, 'coltrane_entry_archive_day'),
(r'^(?P<year>\d{4})/(?P<month>\w{3})/(?P<day>\d{2})/(?P<slug>[-\w]+)/$', 'object_detail', entry_info_dict, 'coltrane_entry_detail'),
)
모델 :
당신이 자습서를 알고있는 경우 모든 파일하지 여기 경우는, 어쩌면 당신은 오류를 알고
import datetime
from django.contrib.auth.models import User
from django.db import models
from markdown import markdown
from tagging.fields import TagField
class Category(models.Model):
title = models.CharField(max_length=250, help_text='Maximum 250 characters.')
slug = models.SlugField(unique=True, help_text='This is the shortname that is created. Must be unique!')
description = models.TextField()
class Meta:
ordering = ['title']
verbose_name_plural = "Categories"
def __unicode__(self):
return self.title
def get_absolute_url(self):
return "/categories/%s/" %self.slug
class Entry(models.Model):
LIVE_STATUS = 1
DRAFT_STATUS = 2
HIDDEN_STATUS = 3
STATUS_CHOICES = (
(LIVE_STATUS, 'Live'),
(DRAFT_STATUS, 'Draft'),
(HIDDEN_STATUS, 'Hidden'),
)
#Core Fields.
title = models.CharField(max_length=250, help_text='Maximum 250 characters.')
excerpt = models.TextField(blank=True, help_text='A short summary of the entry. Optional!')
body = models.TextField()
pub_date = models.DateTimeField(default=datetime.datetime.now)
#Fields to store generated HTML.
excerpt_html = models.TextField(editable=False, blank=True)
body_html = models.TextField(editable=False, blank=True)
#Metadata
author = models.ForeignKey(User)
enable_comments = models.BooleanField(default=True)
featured = models.BooleanField(default=False)
slug = models.SlugField(unique_for_date='pub_date')
status = models.IntegerField(choices=STATUS_CHOICES, default=LIVE_STATUS, help_text="Only entries with live status will be publicly displayed")
#Categorization
categories = models.ManyToManyField(Category)
tags = TagField(help_text="Separate tags with spaces.")
class Meta:
ordering = ['pub_date']
verbose_name_plural = "Entries"
def __unicode__(self):
return self.title
def save(self, force_insert=False, force_update=False):
self.body_html = markdown(self.body)
if self.excerpt:
self.excerpt_html = markdown(self.excerpt)
super(Entry, self).save(force_insert, force_update)
def get_absolute_url(self):
return ('coltrane_entry_detail',(), {'year': self.pub_date.strftime("%Y"),
'month': self.pub_date.strftime("%b").lower(),
'day': self.pub_date.strftime("%d"),
'slug': self.slug })
get_absolute_url = models.permalink(get_absolute_url)
적절한 들여 쓰기를 사용하십시오! 하나의 공간만으로는 잘못되었는지 알 수 없습니다. 따라서 IndentationError. 네 개의 공백을 사용하십시오. –
당신을 다스 려하는 경우 : 데프 get_absolute_url (자동) : 리턴 ('coltrane_entry_detail' 사실 아니, 그것은 단지 하나 개의 들여 쓰기로 여기에 표시됩니다 내 진짜 코드에서 내 오류를 찾을 전에 반환 – MacPython
4 공간이있다..을 : 그것은 urls.py에 있었다 : (R '^ 웹 로그/$' 대신 의 (R '^ 웹 로그 /' – MacPython