簡體   English   中英

Django app中的urls.py在測試博客上導致404錯誤

[英]urls.py in Django app causes 404 error on a test blog

我正在學習Python和Django,我正在構建一個測試博客。 我沒有按照Django書中給出的官方教程(我發現很難理解和學習),而是按照這里給出的教程進行操作。 這有助於我了解管理界面以及模板部分的內容(包括一些示例HTML,我認為它不包含在官方Django書中)。

這是我的urls.py示例(這是在myproject / myproject / urls.py中):

from django.conf.urls import patterns, include, url

# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()

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

    # Uncomment the admin/doc line below to enable admin documentation:
    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
    url(r'^admin/', include(admin.site.urls)),
    url(r'^', include('blog.urls')),
)

這是我的urls.py示例(這是在myproject / blog / urls.py中):

from django.conf.urls.defaults import *

urlpatterns = patterns('',
    (r'^$', 'blog.views.liist'),
    (r'^archive/(\d{1,2})/$', 'blog.views.liist'),
    (r'^\d{4}/d{1,2}/(.*)/$', 'blog.views.detail'),
    (r'^(\d{4})/(\d{1,2})/$', 'blog.views.month'),
    (r'^(\d{4})/$', 'blog.views.year'),
    (r'^category/$', 'blog.views.category'),
    (r'^category/(.*)/$', 'blog.views.one_category'),
    (r'^tag/$', 'blog.views.tag'),
    (r'^tag/(.*)/$', 'blog.views.one_tag'),

)
  • 127.0.0.1:8000 - 有效
  • 127.0.0.1:8000/admin-工作
  • 127.0.0.1:8000/2013/2/fourth-post/- 404

有什么我錯過的嗎? 有人可以指出解決問題的步驟,或檢查什么,或哪個部分拋出錯誤? 因為我不知道從哪里開始故障排除。

我需要在這里發布哪些其他信息對我的情況有幫助嗎?

  • Django版本 - 1.4.3
  • Python版本 - 2.7
  • 操作系統 - Windows XP

提前致謝。

編輯:

這就是我的views.py文件中的“detail”函數:

def detail(request,sl):
    try:
         post = Post.objects.filter(slug=sl)[0]
         try:
              previous_post = post.get_previous_by_published()
         except:
              previous_post = ""
         try:
              next_post = post.get_next_by_published()
         except:
              next_post = ""
    except:
         next_post = ""
         previous_post = ""
         post = ""
    return render_to_response('blog/detail.html', {'post':post,
                                            'next_post':next_post,
                                            'previous_post':previous_post,
                                           },)

嘗試:

(r'^(\d{4})/(\d{1,2})/([-\w]+)/$', 'blog.views.detail')

另外,請查看有關URL的官方文檔: https//docs.djangoproject.com/en/1.4/topics/http/urls/#overview

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM