《Django REST framework 入门到精通》视频课程上线了,全网稀缺资源,深度源码剖析,进阶高手之路!点击链接查看详情

1. 搭建项目环境

阅读: 52090     评论:11

一、创建工程

当前,较新的Pycharm版本都支持同时创建虚拟环境和Django工程。所以我们下面的操作都在Pycharm中进行。

首先打开Pycharm,进入创建工程的对话框,注意下面的红框提示:

image

  • 在Location处选择工程目录
  • 在New environment using处选择Virtualenv(这可能需要你提前pip install virtualenv进行虚拟工具virtualenv的安装)。通常情况下,虚拟环境会以venv的名字,自动在工程目录下生成。
  • 在Base interpreter处,选择你要使用的Python解释器
  • 下面两个单选框,根据需要自行选择
  • 如果想使用现成的解释器或者虚拟环境,请选择Existing interpreter

image

再点开下方的More Settings:

  • Template language选择使用的模板语言,默认Django就行,可选Jinjia。
  • Templates folder:Pycharm安利给我们的功能,额外创建一个工程级别的模板文件的保存目录,可以不设置,空着,这里使用默认设置吧。
  • 启用Admin,一般勾上。

image

没什么问题了,就点击Create吧。

下面就是一段时间的等待,Pycharm会帮助我们自动创建虚拟环境,以及安装最新版本的Django。

创建完成之后,进入Pycharm的设置菜单,可以看到当前Django版本是最新的2.2版本。如果你要指定过去的版本,比如2.1、1.11等,那就不能这么操作了,需要在命令行下自己创建虚拟环境并安装django。或者在这里先删除Django,再安装你想要的指定版本。

image

看下我们当前的状态,注意venv这个虚拟环境目录,以及我们额外创建的templats目录:

image

二、创建app

点击Pycharm最下方工具栏中的Terminal按钮,进入终端界面,可以看到,我们已经在工程的根目录下,并且自动进入了虚拟环境内。(如果你不是通过Pycharm创建的虚拟环境,那么在这里,你可能需要手动激活虚拟环境。)

使用where pythonpython -V查看一下环境:

(venv) D:\work\2019\for_test\mysite>where python
D:\work\2019\for_test\mysite\venv\Scripts\python.exe
C:\Program Files\Python37\python.exe
C:\Program Files\Python36\python.exe
C:\Users\feixuelym\Anaconda3\python.exe

(venv) D:\work\2019\for_test\mysite>python -V
Python 3.7.3

接下来运行python manage.py startapp login创建login这个app。

按照上面的步骤操作完后,login应用就创建成功了,让我们看一下Pycharm中的目录结构:

image

三、 设置时区和语言

Django默认使用美国时间和英语,在项目的settings文件中,如下所示:

# Internationalization
# https://docs.djangoproject.com/en/1.11/topics/i18n/

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True

我们把它改为亚洲/上海时间和中文(别问我为什么没有北京时间,也别把语言写成zh-CN),注意USE_TZ 改成False了。

# Internationalization
# https://docs.djangoproject.com/en/1.11/topics/i18n/

LANGUAGE_CODE = 'zh-hans'     # 这里修改了

TIME_ZONE = 'Asia/Shanghai'    # 这里修改了

USE_I18N = True

USE_L10N = True

USE_TZ = False    # 这里修改了

四、 启动开发服务器

现在,我们可以启动一下开发服务器,测试一下我们的工程了。

在Pycharm的Run/Debug Configurations配置界面里,将HOST设置为127.0.0.1,Port保持原样的8000,确定后,点击绿色三角,走你!

image

在本机的浏览器中访问http://127.0.0.1:8000/,或者点击Pycharm界面里的链接:

image

顺利的话,在浏览器中,你可以看到如下的欢迎界面:

image


 实战一:基于Django2.2可重用登录与注册系统 2. 设计数据模型 

评论总数: 11


点击登录后方可评论

user_image

在虚拟环境下装了2.0版本的,在命令行运行python manage.py makemigrations时报错 ImportError: cannot import name 'path' 什么原因?



user_image

如果使用pycharm进行django工程的创建的话,即使你的环境中已经安装了指定版本的django,但是在创建时依然会继续安装最新版本的django,这一点真是 太坑了。我没有使用博主推荐的virtualenv的方法,不过也很类似,我使用了anaconda进行环境管理。 所以大家如果使用最新的django ==2.0.5的话那无所谓了,如果使用低版本的django,建议还是使用命令一步一步创建project和app吧



user_image

这里会自动安装Django的最新版本,使用下面的方法安装指定版本 https://blog.csdn.net/weixin_42305814/article/details/80742090



user_image

Error creating Django application: Error on python side. Exit code: 1, err: CommandError: 'logsite' conflicts with the name of an existing Python module and cannot be used as a project name. Please try another name. 请问高手,怎么解决?



user_image

问题已解决。。



user_image

virtualenv --no-site_packages mysite_env,应该是no-site-packages吧,就在第一章下面搭建虚拟环境的代码..



user_image

已经修改



user_image

因为,django官方文档给的时间表里只有上海时间啊,zh也分多种,简体就是这种的



user_image

这应该是一个历史遗留问题。



user_image

文章中写到: 验证一下Python版本,虽然是3.6.1,但使用where python查看一下,就会发现python命令指向的并不是我们建立的虚拟环境。 这句话会为新手认为:C:\Python36\python.exe I:\Anaconda3\python.exe 这两句话,看出python命令指向的并不是我们建立的虚拟环境. 实际上因为: F:\Django_course\mysite(没指向虚拟环境) (mysite_env) F:\Django_course\mysite(指向虚拟环境) 我新手,请谅解!找了半天原因



user_image

....