Django - day00 第一个页面
Django - day00
0.写在最前面
第一次接触Django,是在大三的做数据库课程设计的时候,当时好像还是1.8的版本,现转眼就到了2.0的版本。
当时由于没太多的课,仅花了不到一周的时间就完成了作业,之间也使用了其它工具来尝试完成这个作业。
第一次是在imooc上简单学习的,后来由于实在搜不到啥中文资源,于是就疯狂刷文档,有问题就上stackoverflow。
现在回头再看,学习的曲线之低,除了python语言的言简意赅,也得益于Django的框架简洁,让我只关注于逻辑的实现。
这次的重新学习,虽说是帮别人的忙,但也是有点自己的私心的,想借此机会能够重新认识一下Django,了解web服务器。
1. 关于环境的配置
1.1 安装的点滴
环境是Django+Python3.5+mysql
在环境搭建时需要使用python连接至mysql,在安装了mysql的情况下,需要配置mysqldb。若没安装,会出现如下错误提示
D:\workSpace\python\django_start>python manage.py runserver
...
Traceback (most recent call last):
File "D:\usr\Python35-32\lib\site-packages\django\db\backends\mysql\base.py",
line 15, in <module>
import MySQLdb as Database
ImportError: No module named 'MySQLdb'
The above exception was the direct cause of the following exception:
...
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module.
Did you install mysqlclient?
使用 pip install mysqlclient 安装即可,python2.*和3.*有异,这里不探究
About mysqlclient
python interface to MySQL
https://github.com/PyMySQL/mysqlclient-python
此时我的pip已安装目录为:
C:\Users\vincent>pip list --format=legacy
beautifulsoup4 (4.6.0)
certifi (2018.1.18)
chardet (3.0.4)
Django (2.0.4)
html5lib (1.0.1)
idna (2.6)
mysqlclient (1.3.12)
pip (9.0.3)
pytz (2018.3)
requests (2.18.4)
setuptools (28.8.0)
six (1.11.0)
urllib3 (1.22)
webencodings (0.5.1)
注意仅有一个mysqlclient
1.2 验证环境配置成功
一切就绪之后,由于Django默认是sqlite3,还需要配置数据库,配置如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'django_day_00',
'USER':'安装mysql时设置的账号',
'PASSWORD':'安装mysql时设置的密码',
'HOST':'localhost'
}
}
运行python manage.py runserver 即可
2. 跑一个页面
2.1 浏览器发送请求,需要设置响应的url:
#django_start\django_start\urls.py
from apps.message import views
urlpatterns = [
path('admin/', admin.site.urls),
path('login/', views.get_login),
]
2.2 url已经有了,需要设置映射的函数:
#django_start\apps\message\views.py
from django.shortcuts import render
def get_login(request):
return render(request,'message_login.html')
2.3 页面的资源设置
可以在每个单独的应用下建立一个static目录,也可以在根目录下建立一个static,在应用多的情况下,显然后者会更好。在根目录下建立一个static文件夹,设置找寻路径:
STATIC_URL = '/static/'
#新添加
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
templates的设置的原因也同理,设置方式如下:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates', # 解析模板的引擎
'DIRS': [os.path.join(BASE_DIR, 'templates')],# 找寻模板的路径
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
2.4 跑起来
浏览器中输入 http://localhost:8000/login/ 即可看到效果。
Django - day00 第一个页面的更多相关文章
- pycharm+Django启动我的第一个页面(Django二)
打开pycharm(社区版),File->open 找到由命令 django-admin startproject mysite 在D盘下创建的文件夹mysite mysite通过文件资源管理器 ...
- Django入门第一步:构建一个简单的Django项目
Django入门第一步:构建一个简单的Django项目 1.简介 Django是一个功能完备的Python Web框架,可用于构建复杂的Web应用程序.在本文中,将通过示例跳入并学习Django.您将 ...
- Yii2.0学习笔记:第一个页面Saying Hello
Controller目录下创建TestController.php 复制下面代码,yii跟tp一样,全程命名空间 <?php namespace app\controllers; use yii ...
- Django实现自定义template页面并在admin site的app模块中加入自定义跳转链接
在文章 Django实现自定义template页面并在admin site的app模块中加入自定义跳转链接(一) 中我们成功的为/feedback/feedback_stats/路径自定义了使用tem ...
- ASP.NET MVC案例教程(基于ASP.NET MVC beta)——第二篇:第一个页面
摘要 本文首先一步一步完成Demo的第一个页面——首页.然后根据实现过程,说明一下其中用到的与ASP.NET MVC相关的概念与原理. 让第一个页面跑起来 现在,我们来实现公告系统 ...
- 浅入深出Vue:第一个页面
今天正式开始入门篇,也就是实战了~ 首先我们是要做一个博客网站,UI 框架采用江湖传闻中的 ElementUI,今天我们就来利用它确定我们博客网站的基本布局吧. 准备工作 新建一个vue项目(可以参考 ...
- django xadmin中logout页面在chrome浏览器中点击关闭页面无效
问题现象 django xadmin中logout页面在chrome浏览器中点击关闭页面无效,无法关闭相应的页面 问题原因 高版本的chrome等浏览器不支持在window.colse()的写法 问题 ...
- django 从零开始 4 404页面和500页面设置
在视图函数中定义两个 函数 分别对应404 个500页面 (自定义html内容吧,这里只是展示) 在template页面指向自己定义的404.html和500.html页面 在项目的urls中设置 h ...
- CI4框架应用四 - 第一个页面
我们来看一下CI4框架的默认页面是如何实现的. 我们先来认识一下路由文件(app\Config\Routes.php),这个文件非常重要,且功能强大,它定义了URL模式及响应处理方法,我们先看一下这个 ...
随机推荐
- Node.js发布http服务
Node.js发布http服务 2018-11-09 09:43:03 Visit 0 简单服务 var http = require(\'http\'); http.createServer( ...
- PAT——1045. 快速排序
著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元,通过交换,把比主元小的元素放到它的左边,比主元大的元素放到它的右边. 给定划分后的N个互不相同的正整数的排列,请问有多 ...
- [LuoguP3195] [HNOI2008]玩具装箱TOY
[HNOI2008]玩具装箱(Link) 题目描述 \(P\)教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京.他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,再放到一种特殊 ...
- C#实现双向链表
原文:http://www.cnblogs.com/skywang12345/p/3561803.html#a33 没有C#版本的..是不是很方..不过图和说明很好,引用一下 双向链表 双向链表(双链 ...
- OSD仿真_MFC程序01
Windows系统具有强大的绘图功能,可以用来模拟OSD显示.接下来将设计一个简单的模拟显示终端的程序,用于后续显示功能和菜单系统的开发.说明一下,对于Windows下的MFC编程我不怎么了解,只知道 ...
- 用cookie实现记住用户名和密码
1.当第一次发送请求时,在jsp页面并不能获取cookie对象,第一次是addCookie,之后再请求时才能获得. session和sessionid在服务器端生成的时候,同时把sessionID放在 ...
- 转:system.Security.Cryptography C# 加密和解密
以下文转自: http://www.360doc.com/content/13/0122/05/19147_261678471.shtml 总结:注册的时候经过MD5加密存进数据库,在登录的时候需要先 ...
- [videos系列]日本的videos视频让男人产生了哪些误解?
转载自:[videos系列]日本的videos视频让男人产生了哪些误解? 日本的videos视频是每个男人成长过程中都会看的启蒙教育片,也是男人在成年后调剂生活的必需品,但是由于影视作品是艺术的,是属 ...
- Windows10:Opencv4.0+Opencv4.0.1_contrib编译
操作系统:windows10 64bit 已安装工具:VS2017 64bit,cmake3.12bit. 安装Cmake:到cmake下载3.12及以上版本,64bit, 选择windows下的安装 ...
- 『ACM C++』HDU杭电OJ | 1416 - Gizilch (DFS - 深度优先搜索入门)
从周三课开始总算轻松了点,下午能在宿舍研究点题目啥的打一打,还好,刚开学的课程还算跟得上,刚开学的这些课程也是复习以前学过的知识,下半学期也不敢太划水了,被各种人寄予厚望之后瑟瑟发抖,只能努力前行了~ ...