编程语言
首页 > 编程语言> > python – Django – 设置urls.py和views.py

python – Django – 设置urls.py和views.py

作者:互联网

我是Django的新手,我正在尝试配置我的urls.py和views.py文档.这可能是一个非常简单的问题,但我不能为我的生活设置我的urls.py和views.py文档,以便localhost / index指向我创建的index.html文件.我已经按照Django项目教程来写了这封信并试了很多很多变种,但这并不是为了点击我.任何帮助将非常感激!

index.html文件位于mysite / templates / index.html

我的文件夹结构是这样的……

 mysite/
      mysite/
           __init__.py
           settings.py
           urls.py
           wsgi.py
      app/
           __init__.py
           admin.py
           models.py
           tests.py
           urls.py
           views.py
      templates/
           css
           img
           js
           index.html

我的views.py包含:

 from django.http import HttpResponse
 from django.shortcuts import render_to_response
 from django.template import Context, loader
 from django.http import Http404

 def index(request):
     return render(request, "templates/index.html")

更新:我的文件夹结构现在看起来像这样:

 mysite/
      mysite/
           __init__.py
           settings.py
           urls.py
           wsgi.py
           templates/
                     index.html
      app/
           __init__.py
           admin.py
           models.py
           tests.py
           urls.py
           views.py
      static/
           css
           img     
           js

解决方法:

您是否在TEMPLATE_DIRS中定义了模板路径.

settings.py

# at start add this
import os, sys

abspath = lambda *p: os.path.abspath(os.path.join(*p))

PROJECT_ROOT = abspath(os.path.dirname(__file__))
sys.path.insert(0, PROJECT_ROOT)

TEMPLATE_DIRS = (
    abspath(PROJECT_ROOT, 'templates'), # this will point to mysite/mysite/templates
)

然后将您的模板文件夹移动到mysite> mysite>模板

然后,而不是返回渲染(请求,“templates / index.html”),只需执行此返回渲染(请求,“index.html”).这应该工作.

您的目录结构应该是:

mysite/
      mysite/
          __init__.py
          settings.py
          urls.py
          wsgi.py

          templates/
              index.html
          static/
              css/
              js/
          app/
               __init__.py
               admin.py
               models.py
               tests.py
               urls.py
               views.py

标签:python,django,django-urls
来源: https://codeday.me/bug/20190901/1783141.html