Django 开发初探 (PyCharm+Django)

本文将介绍在PyCharm下如何使用 Django 来创建项目。
测试版本说明:

  • Python 2.7.10
  • Django 1.8.18

关于Django工程目录结构优化可参考这篇文章:
http://www.loonapp.com/blog/11/

Django 管理工具
安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin.py。我们可以使用 django-admin.py 来创建一个项目:
我们可以来看下django-admin.py的命令介绍:

# django-admin.py
Usage: django-admin.py subcommand [options] [args]

Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath=PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Raise on exception
  --version             show program's version number and exit
  -h, --help            show this help message and exit

Type 'django-admin.py help <subcommand>' for help on a specific subcommand.

Available subcommands:

[django]
    check
    cleanup
    compilemessages
    createcachetable
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

以下步骤将采用两种方式说明:命令行模式和使用PyCharm自定义菜单操作

创建项目

1.使用 django-admin.py 来创建 HelloWorld 项目:

django-admin.py startproject HelloWorld
  • 1

2.使用PyCharm
File ->New project 选择django,根据提示创建即可
这里写图片描述

创建完成后我们可以查看下项目的目录结构:

$ cd HelloWorld/
$ tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

目录说明:
HelloWorld: 项目的容器。
manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
HelloWorld/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
HelloWorld/settings.py: 该 Django 项目的设置/配置。
HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站”目录”。
HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

运行项目

1.进入 HelloWorld 目录输入以下命令,启动服务器:

python manage.py runserver 0.0.0.0:8000
  • 1

0.0.0.0 让其它电脑可连接到开发服务器,8000 为端口号。如果不说明,那么端口号默认为 8000。
2.PyCharm中运行,选中项目,点击红框中的三角按钮即可
这里写图片描述
在浏览器输入你服务器的ip及端口号,如果正常启动,输出结果如下:

这里写图片描述

创建App

1.进入apps目录,执行命令

django-admin.py startapp blog
  • 1

2.PyCharm中添加自定义tools
Preferences->Tools->External Tools添加 创建App的自定义菜单,按下图进行配置,选中要创建app的目录,右键Django->Create App,将会弹出对话框,输入要创建app的名称
这里写图片描述

在settings.py中配置新建的app,


INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'djangoDemo.apps.blog',
]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

为APP创建数据表

找到blog目录,修改models.py

from django.db import models

# Create your models here.


class Test(models.Model):
    name = models.CharField(max_length=20)
    sex = models.BooleanField()
    age = models.CharField(max_length=2)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

创建数据表,
1.执行如下命令

$ python manage.py makemigrations blog  # 让 Django 知道我们在我们的模型有一些变更
$ python manage.py migrate auth   # 必须单独执行一次auth模块,否则会报错
$ python manage.py migrate blog   # 创建表结构
  • 1
  • 2
  • 3

如果不执行 migrate auth可能会报如下错误:

Error creating new content types. Please make sure contenttypes is migrated
  • 1

2.PyCharm中添加自定义tools
Preferences->Tools->External Tools添加 创建App的自定义菜单,按下图进行配置,选中要生成数据表的app目录,右键Django->makemigrations,
这里写图片描述

Preferences->Tools->External Tools添加 创建App的自定义菜单,按下图进行配置,右键Django->migrate auth,
这里写图片描述

Preferences->Tools->External Tools添加 创建App的自定义菜单,按下图进行配置,选中要生成数据表的app目录,右键Django->migrate,
这里写图片描述

看到几行 “Creating table…” 的字样,你的数据表就创建好了。

Creating tables ...
……
Creating table blog_test  #我们自定义的表
  • 1
  • 2
  • 3

点击PyCharm右侧的菜单即可浏览数据库
这里写图片描述

注:以上添加的External Tools只有第一次使用时添加,以后直接使用即可,相对方便,全网首创,O(∩_∩)O~~

猜你喜欢

转载自blog.csdn.net/nalnait/article/details/80906702