Django 是python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站。(emmmm,百度百科)。本学期需要做python数据的可视化,之前搞过两次SMM和SSH,但是之后java基本处于弃用的状态,python越来越流行,所以整个python框架下的网页开发也是有必要的。在此感谢“自强学堂”的django教程,(链接: https://pan.baidu.com/s/1rap4t20 密码: uta2),简单易懂,是和新手入门。

  一、安装与搭建

  已安装python3.5和pycharm,直接在命令行pip install django,然后“Successfully installed Django-2.1.7”。

  File-new project-Django新建一个空项目。

  

  在命令行内运行“python manage.py startapp django_web”建立网站。在setting.py中的INSTALLED_APP内加入‘django_web’,这样jango的网站就能识别了。逻辑顺序是:request获取到url->url找到对应的view->view从model和templates找到想要的数据和网页。

  首先先在templates里新建一个index.html文件,就简单输一个hello world就行。第二部,在views.py中新建函数如下,render函数的作用就是根据request返回html页面。也即是说,view层需要做的是返回页面。

  接下来为写好的页面分配网址。

  运行之后报错,错误类型是UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc7,经过百度搜索,找到了解决方法:https://ask.csdn.net/questions/724167   在小娜里面搜索地区。然后更改国家或地区---管理语言设置---在弹出的地域里面点击‘更改系统区域设置’---把‘BETA版:使用utf-8’那个选上,重启。

  接下来说一下django.urls path 与django.conf.urls  url的区别:

  path调用的是python第三方模块或框架,而url则是自定义的模块。如Views下的def函数对应你url中的参数值.

  例如:

url(r'^login',views.login),
url('login',views.login),
def login(request):
    return render(request,'login.html')

  1.x版本用url,2.x版本用path

  写法上的区别如下:url(r'^index/$',views.index), path('index/',views.index),url需要用的正则表达式,而path不需要。url等同于re_path。  

  因为我是django2的版本,而所看教程是1的版本,我上来直接用的是url方法,后运行404,无头绪,以为2.n版本不兼容url方法,所以又试了path,总结发现必须按照各个方法的书写规范来编写,否则很可能出问题。

  在之后,Exception Type: TemplateDoesNotExist,又继续百度,https://blog.csdn.net/xujin0/article/details/83339303,这里给了解决方案,在TEMPLATES中DIRS:里输入这个:os.path.join(BASE_DIR,'templates')。原因好像是pycharm见项目的时候这个给置成空了,在这里加载上路径就能顺利运行了。

抛出TemplateDoesNotExist的异常时解决方法

首先先查看render()中的文件名输入是否正确。

然后查看是否将模板文件(.html 文件)写入了templates中,查看templates文件名是否正确,必须为templates ,

查看’DIRS’中是否添加了路径。

如果是app中的templates,就去INSTALLED_APPS查看是否安装了app。

  最后,hello world!

												

Django学习(一)的更多相关文章

  1. 今天主要推荐一下django学习的网址!

    前言:每个月忙碌的头20天后,在上班时间投入到django理论学习的过程中,花了差不多3天时间简单的研究了一下django,着实废了我不少脑细胞. 采用虫师前辈的一张图和话: 如果你把这过程梳理清晰了 ...

  2. Django 学习笔记之四 QuerySet常用方法

    QuerySet是一个可遍历结构,它本质上是一个给定的模型的对象列表,是有序的. 1.建立模型: 2.数据文件(test.txt) 3.文件数据入库(默认的sqlite3) 入库之前执行 数据库同步命 ...

  3. Django 学习笔记之三 数据库输入数据

    假设建立了django_blog项目,建立blog的app ,在models.py里面增加了Blog类,同步数据库,并且建立了对应的表.具体的参照Django 学习笔记之二的相关命令. 那么这篇主要介 ...

  4. Django学习系列之Form基础

     Django学习系列之Form基础 2015-05-15 07:14:57 标签:form django 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追 ...

  5. Django学习笔记(五)—— 表单

    疯狂的暑假学习之  Django学习笔记(五)-- 表单 參考:<The Django Book> 第7章 1. HttpRequest对象的信息 request.path         ...

  6. Django学习笔记(三)—— 型号 model

    疯狂暑期学习 Django学习笔记(三)-- 型号 model 參考:<The Django Book> 第5章 1.setting.py 配置 DATABASES = { 'defaul ...

  7. django学习之Model(二)

    继续(一)的内容: 1-跨文件的Models 在文件头部import进来,然后用ForeignKey关联上: from django.db import models from geography.m ...

  8. Python框架之Django学习

    当前标签: Django   Python框架之Django学习笔记(十四) 尛鱼 2014-10-12 13:55 阅读:173 评论:0     Python框架之Django学习笔记(十三) 尛 ...

  9. Django 学习笔记(二)

    Django 第一个 Hello World 项目 经过上一篇的安装,我们已经拥有了Django 框架 1.选择项目默认存放的地址 默认地址是C:\Users\Lee,也就是进入cmd控制台的地址,创 ...

  10. Django 学习笔记(五)模板标签

    关于Django模板标签官方网址https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.IF标签 Hello World/vi ...

随机推荐

  1. 关于Tomcat

    详情转自:http://blog.csdn.net/jiuqiyuliang/article/details/48094373和http://blog.csdn.net/u012934325/arti ...

  2. Go语言中Loop的注意点

    Go语言和其他语言不一样,它只有一种循环方式,就是for语句 可以参考如下公式: for initialisation; condition; post{ //Do Something } 执行顺序 ...

  3. Glog使用记录

    1.Flag_xxx FLAGS_logtostderr = false; //是否将所有日志输出到stderr,而非文件 FLAGS_alsologtostderr = false; //日志记录到 ...

  4. 十行代码分清Java 的 || 和 &&

    发现有些同学到现在还没分不清 || 和 &&的作用 package System; /** * * @ClassName: RandomTest * @Description: 十行代 ...

  5. Django web编程3 -- 创建用户账户

    我们将建立一个用户注册和身份验证系统,让用户能够注册账户,进而登录和注销.我们将创建一个新的应用程序,其中包含与处理用户账户相关的所有功能.我们还将对模型Topic 稍做修改,让每个主题都归属于特定用 ...

  6. NameNode和SecondaryNameNode工作原理剖析

    NameNode和SecondaryNameNode工作原理剖析 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.NameNode中的元数据是存储在那里的? 1>.首先,我 ...

  7. ArcGis Python脚本——将细碎小面合并到相邻的面积最大的面

    参数: polygon_fc 面要素类 area_limit 给定面积值,小于它的面会被合并 给定两个参数即可,这回没有注释. #polygon_fc 面要素类 #area_limit 给定面积值,小 ...

  8. <HTML>页面与互联网

    托管 1.数据传输:托管公司允许你在一定时间内向访问者发送的页面和数据量. 2.备份:公司是否对你的页面定期备份,从而在服务器出现硬件故障时能够恢复. 域名 www.starbuzzcoffee.co ...

  9. [转载]再谈PostgreSQL的膨胀和vacuum机制及最佳实践

    本文转载自 www.postgres.cn 下的文章: 再谈PostgreSQL的膨胀和vacuum机制及最佳实践http://www.postgres.cn/news/viewone/1/390 还 ...

  10. echo 输入背景和字体常用方法

               ECHO输出背景颜色以及文字颜色输出格式:  echo -e "\033[字背景颜色;文字颜色m字符串\033[0m"例如:        echo -e & ...