windows搭建Django项目

首先,windows、Django、mysql和vscode是本文用到的工具

1、安装python环境和mysql数据库

     (a) 安装mysql数据库,需要注意的是把db移到别的盘,在另一篇有讲,详细教程也有贴,自行查看。

     (b) python环境的话,我比较倾向于用anaconda3去装python3.5,喜欢用最新的版本的python。官网可下载

2、推荐vscode代码编辑环境

3、新建Django项目

    (1)新建一个文件夹,cd到该文件下,创建项目:

django-admin startproject oa  #新建gjango项目,并用vscode打开。操作如下

           ..

         code . 注意后面有个点。这是将vscode的路径加到path里,所以可以从这里直接打开,点表示将现在路径作为项目工作空间。生成的文件目录如下:

           ..

           settings.py是配置项目的路径、数据库等,默认是sqlite,我采用mysql数据库存储数据。url.py是路由路径。manage.py是一个工具。可以通过manage.py拉起整个项目。到现在为止,你可以在控制台通过如下命令拉起项目:  

python manage.py runserver 0.0.0.0:8000   #在此之前,可以通过python manage.py help查看可用命令
E:\bin\Anaconda3\python.exe manage.py runserver 0.0.0.0:8000  #我这里用的是这样的方式,指定python去调用。因为版本比较多

       在浏览器试试http://127.0.0.1:8000/admin/,访问一下django提高的后台管理,满强大的。

  (2)发现admin需要用户名和密码。这样的话,就先要去settings.py文件配置mysql数据库。然后在控制台创建超级用户,邮箱可不写: 

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'db_oa',
        'USER': 'root', 
        'PASSWORD': '*****',
        'HOST': '127.0.0.1', 
        'PORT': '3306', 
    }
}
ALLOWED_HOSTS = ['*'] # *设置url,在浏览器上访问的。可设置主机ip,然后用http://*:8000/admin去访问
python manage.py createsuperuser #创建超级用户

   如果报右边的错误,..

python manage.py migrate
python manage.py createsuperuser  #先执行上面的,再执行这个就ok了

      这是因为在创建超级用户之前要做一个数据库迁移。
(3)接下来,是创建自己的app了。

python manage.py startapp app   #app是自己应用的名字

      接下来,比如你在自己的mysql里已经建好表了,那么就可以采用数据迁移的方式,直接与django里的models绑定:

E:\codewyan\oa>python manage.py makemigrations  #采用这两条命令,出现如下提示,则成功
<class 'demo.models.OaChannelTable'>
Migrations for 'demo':
  demo\migrations\0001_initial.py
    - Create model OaChannelTable
    - Create model OaPropTable

E:\codewyan\oa>python manage.py migrate
<class 'demo.models.OaChannelTable'>
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, demo, sessions
Running migrations:
  Applying demo.0001_initial... OK

python manage.py inspectdb    #这个命令可以查看现有的模型文件(models.py)

      接下来,就可以在自己的views.py里访问models里的类(models会将数据表映射为类,然后采用类名.objects.all()[:10]访问数据库,得到一个查询的queryset)。

      坑还有很多,笔者在后面的学习中会不断积累并记录的。

     一切顺利的话,django就建好了!当然,过程中可能有意外,bug无时无刻不在。google,百度都可以,这个过程也是学习很快的过程,不要怕bug!笔者也是踩着坑过来的。

      

猜你喜欢

转载自blog.csdn.net/wangyan_z/article/details/81121451