您的位置:首页 > 移动开发

pycharm 运行django服务器端 以及创建app方法

2017-03-17 20:48 621 查看
 
要是直接运行manage.py程序的话 会提示一大堆东西,那无非是提示没有传入参数。所以在pycharm上传入参数运行即可:操作方式如下
打开manage.py文件 在pycharm右上角点击edit configurations 编辑配置参数



点开之后弹出如下对话框,在scrip parameters 对应的对话框中输入配置参数 runserver 0.0.0.0:8000.配置完成之后点击ok就完成了。



 

 
配置完以上信息之后,直接按Ctrl+shift+F10 运行一下manage.py文件:出现如下结果
D:\Python27\python.exe D:/Djangotext01/manage.py runserver 0.0.0.0:8000

Performing system checks...

System check identified no issues (0 silenced).

You have unapplied migrations; your app may not work properly until they are applied.

Run 'python manage.py migrate' to apply them.

July 26, 2015 - 22:10:52

Django version 1.8.2, using settings 'Djangotext01.settings'

Starting development server at http://0.0.0.0:8000/

Quit the server with CTRL-BREAK.

D:\Python27\lib\site-packages\django-1.8.2-py2.7.egg\django\utils\translation\__init__.py:146: RemovedInDjango19Warning: The use of the language code 'zh-cn' is deprecated. Please use the 'zh-hans' translation instead.

  return _trans.activate(language)
 
配置完成,之后今后启动的话都会默认为上述配置参数。配置完以上信息之后,在浏览器中输入http://127.0.0.1:8000 返回如下结果:



 

 

 

 

创建django app 

我们先来了解一下一些必要的概念。Django 里什么东西叫 APP 呢?

我们已经创建了 project , 那么 project 和 APP 之间到底有什么不同呢?它们的区别就是一个是配置另一个是代码:

一个project包含很多个Django app以及对它们的配置。

技术上,project的作用是提供配置文件,比方说哪里定义数据库连接信息, 安装的app列表, TEMPLATE_DIRS ,等等。

一个app是一套Django功能的集合,通常包括模型和视图,按Python的包结构的方式存在。

例如,Django本身内建有一些app,例如注释系统和自动管理界面。 app的一个关键点是它们是很容易移植到其他project和被多个project复用。

创建一个APP

在 “PythonProject” 项目文件下输入下面的命令来创建 “nowamagic” app:

1
python manage.py startapp nowamagic
这个命令并没有输出什么,它只在 PythonProject 的目录里创建了一个 nowamagic 目录。 让我们来看看这个目录的内容:

1
nowamagic
/
2
    
__init__.py
3
    
models.py
4
    
tests.py
5
    
views.py
这个目录包含了这个app的模型和视图。

使用你最喜欢的文本编辑器查看一下 models.py 和 views.py 文件的内容。 它们都是空的,除了 models.py 里有一个 import。这就是你Django app的基础。

对于如何架构Django代码并没有快速成套的规则。 如果你只是建造一个简单的Web站点,那么可能你只需要一个app就可以了; 但如果是一个包含许多不相关的模块的复杂的网站,例如电子商务和社区之类的站点,那么你可能需要把这些模块划分成不同的app,以便以后复用。

不错,你可以不用创建app,这一点应经被我们之前编写的视图函数的例子证明了 。 在那些例子中,我们只是简单的创建了一个称为views.py的文件,编写了一些函数并在URLconf中设置了各个函数的映射。 这些情况都不需要使用apps。

但是,系统对app有一个约定: 如果你使用了Django的数据库层(模型),你必须创建一个Django app。模型必须存放在apps中。因此,为了开始建造我们的模型,我们必须创建一个新的app。

后面你会发现,APP会给我们带来多大的便利。

安装Django 

下载Django包,解压缩。

CMD 进入解压路径下。

执行:python setup.py install 

增加环境变量:

C:\Python27\Scripts

 

测试django是否安装成功

shell 

import django

django.VERSION

 

把Django导入项目

CMD 进入项目路径

执行 django-admin.py startproject 项目名  

 

 运行开发服务器

项目Django路径下  python manage.py runserver



python manage.py runserver 8000



 

通过指定一个 IP 地址,你可以告诉服务器–允许非本地连接访问。 如果你想和其他开发人员共享同一开发站点的话,该功能特别有用。 `` 0.0.0.0`` 这个 IP 地址,告诉服务器去侦听任意的网络接口。 

 

python manage.py runserver 0.0.0.0:8000

 

以上是在cmd终端运行的django服务器端接下来要在pycharm上运行服务器端:

     

1. 在PyCharm→Settings→Project Interpreter中安装Django 1.9(Django框架代码)、PyMySQL 0.7.1(Django与MySQL Server之间的连接器);




PyCharm中的项目所使用的Python解释器以及包管理界面


2. 安装MySQL服务器端(推荐直接安装MySQL Workbench,包括了Server和Client),并确认“计算机服务”中的“MySQL57”已启动;




确认MySQL57服务已启动


3. Django项目中配置settings.py

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #设置为mysql数据库
'NAME': '',  #mysql数据库名
'USER': '',  #mysql用户名,留空则默认为当前linux用户名
'PASSWORD': '',   #mysql密码
'HOST': 'localhost',  #留空默认为localhost
'PORT': '3306',  #留空默认为3306端口
}
}


4. Django项目中配置__init__.py


由于django2.x版本时支持的是MySQLdb,PyMySQL是作为停更的MySQLdb支持python3.x,因此需要添加如下设置:
import pymysql
pymysql.install_as_MySQLdb()


5. 打开Workbench,新建Model(Schema),命名与步骤3中的'NAME'一致,保存为.mwb文件。新建任意一个table(创建任意一列),然后在菜单栏Database中执行Forward Engineer,之后可以在Navigator栏中的SCHEMAS中看到之前新建的Schema(eds)。若在新建Model后直接执行Forward Engineer,则会因为是空模型而创建失败。




在MySQL中创建成功的eds


6. 在PyCharm中的Terminal中执行以下命令,可以在MySQL Server中创建django项目中的定义的所有Model。

python manage.py makemigrations
python manage.py migrate


7. 在PyCharm中的Python Console中执行如下命令,可以在数据库eds中的polls_question表中创建新的数据条目。


PS:Question的定义可参考django documentation
from django.utils import timezone
from polls.models import Question
Question(question_text='Hello 2016', pub_date=timezone.now()).save()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: