一、Django
1. 下载django
1 | pip install Django==3.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/ |
2. 新建django项目
在pycharm中用虚拟环境建立
1 | django-admin.py startproject learning_log . |
创建数据库:
1 | python manage.py migrate |
查看项目: http://localhost:8000/admin/
1 | python manage.py runserver |
创建应用(pycharm中在刚开始已创建一个)
1 | python manage.py startapp learning_logs |
在setting.py中找到INSTALLED_APPS添加应用
3. 定义模型models.py
更新数据库:
1 | python manage.py makemigrations learning_logs |
每当需要修改“学习笔记”管理的数据时,都采取如下三个步骤:修改models.py;对 learning_logs调用makemigrations;让Django迁移项目。
每当需要修改“学习笔记”管理的数据时,都采取如下三个步骤:修改models.py;对 learning_logs调用makemigrations;让Django迁移项目。
创建超级用户:
1 | python manage.py createsuperuser |
向管理网站注册模型:
我们创建应用程序learning_logs时,Django在models.py所在的目录中创建了一个名为 admin.py的文件
1 | from django.contrib import admin |
4. Django shell
1 | python manage.py shell |
5.版本造成的错误:
url:
先导入re_path,使用re_path代替url可用正则搜索
Django2.0中编写models类下的ForeignKey
book = models.ForeignKey(‘BookInfo’)django2.0与之前的1.8不同,
错误:
1 | book = models.ForeignKey('BookInfo') |
TypeError: init() missing 1 required positional argument: ‘on_delete’
TypeError: init() missing 1 required positional argument: ‘on_delete’
解决方法:
1 | book = models.ForeignKey('BookInfo', on_delete=models.CASCADE,) |
加上on_delete参数就可以了!!!
—
二、推送到heroku
1. git提交项目:
1 | git init |
2. 推送heroku:
1 | heroku login #(需要翻墙) |
3. 在服务端更新数据:
1 | heroku run python manage.py migrate |
可以在在线应用程序的URL末尾添加/admin/来登录管理网站
4. 修改后提交:
1 | git add . |