黑马程序员技术交流社区
标题:
【上海校区】Python web框架Django学习(一)
[打印本页]
作者:
不二晨
时间:
2018-9-28 09:48
标题:
【上海校区】Python web框架Django学习(一)
一.基本命令:
注:我的是有两个python版本,将python3.6版本的命令设置为 python3 ...,这个根据自己的来就行
django-admin startproject projectname:生成名为 projectname 的项目 (之后需 cd projectname 执行后面命令)
pytno3 manage.py startapp app_name:新建名为 app_name 的app(一般一个项目有多个app, 通用的app可以在多个项目中使用)
python3 manage.py makemigrations:创建数据库表 或 更改数据库表或字段
python3 manage.py migrate:将上一个命令生成的py文件作用到数据库(注意和3的区别,3是生成但未作用的数据库,4才是作用到数据库)
python3 manage.py runserver:开发服务器(可以在runserver后指定运行端口,如python3 manage.py runserver 9999 则表示在9999端口运行开发服务器)
python3 manage.py dbshell:数据库命令行
python3 manage.py createsuperuser:创建管理员(按提示输入用户名、邮箱、密码,之后启动服务器后,用127.0.0.1:端口号/admin登录)
管理界面本地化:Django管理中文界面:在settings.py中将LANGUAGE_CODE 值改为 zh-hans;时区本地化:在settings.py中将TIME_ZONE的值改为Asia/Shanghai
二.踩过的坑:
注:踩过的坑 解决eg 都是以我的为例子,如有不同需根据自己的代码做改动解决
Django在根据models生成数据库表时报 (使用命令:python3 manage.py makemigrations时)TypeError:__init__() missing 1 required positional argument: 'on_delete'
原因:在django2.0后,定义外键和一对一关系的时候需要加on_delete选项,此参数为了避免两个表里的数据不一致问题,不然会报错:TypeError: __init__() missing 1 required positional argument: 'on_delete'
解决:在外键值的后面加上 on_delete=models.CASCADE
eg:hbook = models.ForeignKey('BookInfo',on_delete=models.CASCADE)
在进入admin的时候出现’set’ object is not reversible错误
版本:python3 and django2.1
解决:将urls.py 中{ } 改为[]
版本:python3.6 and mysql and django2.1
解决: 在项目文件夹下的_init_.py中导入pymysql包
python3.6+MySQL,django项目报错:ModuleNotFoundError: No module named 'MySQLdb'
import pymysql
pymysql.install_as_MySQLdb()
最后:刚开始学,有的地方希望大家指正
,全文地址请点击:
https://blog.csdn.net/ZDW_455/ar ... 713?utm_source=copy
作者:
不二晨
时间:
2018-10-10 13:42
奈斯
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2