【问题标题】:First project in djangodjango的第一个项目
【发布时间】:2016-01-23 23:01:44
【问题描述】:

请帮助我学习 django。我试图理解为什么会出现 404 错误。

这是我的主要 urls.py

from django.conf.urls import include, url
from django.contrib import admin
admin.autodiscover()

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^/', include('account_app.urls')),
]

我的帐户 urls.py from django.conf.urls 导入模式,url

from account_app import views

urlpatterns = [
    url(r'^$', views.index, name='index')
]

有我对账户的看法

from django.shortcuts import render
from django.http import HttpResponse
from django.template import RequestContext, loader

from yes_no.models import account_class # added to model yes_no


def index(request):
    template = loader.get_template('./index.html')
    context = RequestContext(request, {
        'a' : a,
    })
    return HttpResponse(template.render(context))

附:我的 index.html 文件存在于 accout 视图和 urls 文件的文件夹中

感谢您的帮助。

【问题讨论】:

  • 它应该在您的应用程序或项目的模板文件夹中,查看 django 文档
  • 什么是?!你必须初始化一个变量。
  • 您的 404 是由包含 URL 模式中的前导斜杠引起的。然而,正如其他人所指出的,还有很多其他的东西,尤其是您放置模板的位置以及您如何引用它。

标签: python django


【解决方案1】:

也许您需要开始使用Class Based View?一切都变得更容易了。

urls.py 应该是这样的

from django.conf import settings
from django.views.static import serve
from some_app.views import HomePageView(

urlpatterns = [
    url(r'^about/', HomePageView(.as_view()),
]

if settings.DEBUG:
    urlpatterns += [
        url(r'^media/(?P<path>.*)$', serve, {
            'document_root': settings.MEDIA_ROOT,
        }),
   ]

views.py

from django.views.generic.base import TemplateView

class HomePageView(TemplateView):
    template_name = "home.html"
    def get(self, request, *args, **kwargs):
        context = dict()
        context['foo'] = 'bar'
        return Homepage.render_to_response(self, context)

我们需要有错误的完整跟踪

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多