Django图片错误和{%url管理员:索引%}

Django图片错误和{%url管理员:索引%},django,Django,我正在使用本教程制作一个简单的博客 我有一个问题和一个问题要解决。:] 问题是我的博客看起来不像轻鸟的例子 第二个问题是我的bbase.html中的语法{%url admin:index%} 我没有将名称空间注册为admin,但是在我的主URL中,由于名称空间='blog',我不明白这种语法是如何工作的{%URL admin:index%} 我的主要意见是: from django.conf.urls import patterns, include, url from django.c

我正在使用本教程制作一个简单的博客 我有一个问题和一个问题要解决。:]

问题是我的博客看起来不像轻鸟的例子 第二个问题是我的bbase.html中的语法{%url admin:index%} 我没有将名称空间注册为admin,但是在我的主URL中,由于名称空间='blog',我不明白这种语法是如何工作的{%URL admin:index%}

我的主要意见是:

 from django.conf.urls import patterns, include, url
 from django.contrib import admin
 from django.conf import settings
 admin.autodiscover()
 urlpatterns = patterns('',                  
     url(r'^admin/', include(admin.site.urls)),
     url(r'^cool/', include('blog.urls', namespace='blog')),

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

urlpatterns = patterns('blog.views',
        url(r'^$','main', name='main'),

)
我的博客是:

 from django.conf.urls import patterns, include, url
 from django.contrib import admin
 from django.conf import settings
 admin.autodiscover()
 urlpatterns = patterns('',                  
     url(r'^admin/', include(admin.site.urls)),
     url(r'^cool/', include('blog.urls', namespace='blog')),

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

urlpatterns = patterns('blog.views',
        url(r'^$','main', name='main'),

)
我的观点

from django.core.paginator import Paginator, InvalidPage, EmptyPage
from django.core.urlresolvers import reverse
from django.shortcuts import render_to_response
from blog.models import *

def main(request):
    """Main listing."""
    posts = Post.objects.all().order_by("-created")
    paginator = Paginator(posts, 2)

    try: page = int(request.GET.get("page", '1'))
    except ValueError: page = 1

    try:
        posts = paginator.page(page)
    except (InvalidPage, EmptyPage):
        posts = paginator.page(paginator.num_pages)

    return render_to_response("list.html", dict(posts=posts, user=request.user))
My bbase.html,位于C:\djcode\mysite\blog\templates中

 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head> <title>{% block title %}MyBlog{% endblock %}</title> </head>

 <body>
     <div id="sidebar"> {% block sidebar %} {% endblock %} </div>
     <div id="container">
         <div id="menu">
             {% block nav-global %}

                 <!-- MENU -->
                 <h3>MyBlog</h3>
                 {% if user.is_staff %}
                 <a href="{% url admin:index %}">Admin</a>
                 <a href="{% url admin:blog_post_add %}">Add post</a>
                 {% endif %}

             {% endblock %}
         </div>

         <div id="content">
             {% block content %}{% endblock %}
         </div>
     </div>

 </body>
 </html>

{%block title%}MyBlog{%endblock%}
{%block边栏%}{%endblock%}
{%block nav global%}
我的博客
{%if user.is_staff%}
{%endif%}
{%endblock%}
{%block content%}{%endblock%}
My list.html

{% extends "bbase.html" %}

{% block content %}
    <div class="main">

         <!-- Posts  -->
         <ul>
             {% for post in posts.object_list %}
                 <div class="title">{{ post.title }}</div>
                 <ul>
                     <div class="time">{{ post.created }}</div>
                     <div class="body">{{ post.body|linebreaks }}</div>
                 </ul>
             {% endfor %}
         </ul>

         <!-- Next/Prev page links  -->
         {% if posts.object_list and posts.paginator.num_pages > 1 %}
    <div class="pagination" style="margin-top: 20px; margin-left: -20px; ">
        <span class="step-links">
            {% if posts.has_previous %}
                <a href= "?page={{ posts.previous_page_number }}">newer entries &lt;&lt; </a>
            {% endif %}

            <span class="current">
                &nbsp;Page {{ posts.number }} of {{ posts.paginator.num_pages }}
            </span>

            {% if posts.has_next %}
                <a href="?page={{ posts.next_page_number }}"> &gt;&gt; older entries</a>
            {% endif %}
              </span>
          </div>
          {% endif %}

      </div>

{% endblock %}
{%extensed“bbase.html”%}
{%block content%}
    {posts.object_list%} {{post.title}}
      {{post.created}} {{post.body | linebreaks}}
    {%endfor%}
{%if posts.object_列表和posts.paginator.num_页面>1%} {%if posts.has_previous%} {%endif%} 第{{posts.paginator.num_pages}页中的{{posts.number}} {%if posts.has_next%} {%endif%} {%endif%} {%endblock%}
url标签
{%url admin:index%}
链接到
管理员
应用程序的
索引
视图。管理员命名空间是正确的,因为您在模式中包含了管理员URL:

url(r'^admin/', include(admin.site.urls)),
注意:您没有为
admin
应用程序设置名称空间,因此它默认为
admin

如果您想链接到
博客
应用程序中的
索引
视图,您可以使用
{%url博客:index%}


如果您是Django新手,我个人建议在包含url模式时忽略名称空间功能。如果您想区分不同应用中具有相同名称的两个视图,或者同一应用的两个不同实例,那么它可能非常有用,但在这里,它似乎会给您带来不必要的混淆。另一方面,我总是推荐它,它解决了许多url模式问题

url标签
{%url admin:index%}
链接到
管理
应用程序的
索引
视图。管理员命名空间是正确的,因为您在模式中包含了管理员URL:

url(r'^admin/', include(admin.site.urls)),
注意:您没有为
admin
应用程序设置名称空间,因此它默认为
admin

如果您想链接到
博客
应用程序中的
索引
视图,您可以使用
{%url博客:index%}


如果您是Django新手,我个人建议在包含url模式时忽略名称空间功能。如果您想区分不同应用中具有相同名称的两个视图,或者同一应用的两个不同实例,那么它可能非常有用,但在这里,它似乎会给您带来不必要的混淆。另一方面,我总是推荐它,它解决了许多url模式问题

您的问题是否缺少格式?如果是这样,它看起来像是一个CSS问题,因此不一定与Django模板有关。查看页面的源代码,看看它是否包含指向CSS样式表的链接。如果样式表的链接被破坏了,你知道这就是问题所在。是的,我缺少css。感谢David Robinson解决了这个问题。你能帮我回答另一个问题吗?你用的是什么版本的python和django?@cathy,教程是针对1.1版django编写的,但我用的是django 2.4和phython 2.6。我想,我必须自己实现css,但你还记得昨天你告诉我如何注册名称空间吗。我在主url中注册了namespace='blog'),但在bbase.html中注册了。它在教程中是{%url admin:index%},它是有效的。它是如何工作的?比如说,当我还没有注册管理员的时候,我可以看到你的设置代码吗。我看你的管理员代码没有错。你的问题是缺少格式吗?如果是这样,它看起来像是一个CSS问题,因此不一定与Django模板有关。查看页面的源代码,看看它是否包含指向CSS样式表的链接。如果样式表的链接被破坏了,你知道这就是问题所在。是的,我缺少css。感谢David Robinson解决了这个问题。你能帮我回答另一个问题吗?你用的是什么版本的python和django?@cathy,教程是针对1.1版django编写的,但我用的是django 2.4和phython 2.6。我想,我必须自己实现css,但你还记得昨天你告诉我如何注册名称空间吗。我在主url中注册了namespace='blog'),但在bbase.html中注册了。它在教程中是{%url admin:index%},它是有效的。它是如何工作的?比如说,当我还没有注册管理员的时候,我可以看到你的设置代码吗。我看不出你的管理员代码有错。哦,好吧,{%url admin:index%}和{%url blog:index%}。是相同的吗?它们实际上并不相同,它们都链接到名为
index
的视图,但在不同的名称空间中。如果要链接到
管理
应用程序中的
索引
视图,请使用
{%url admin:index%}
。如果要链接到
博客
应用程序中的
索引
视图,请使用
{%url blog:index%}
+1是,名称空间很糟糕