manjaro(linux)下配置 Anaconda + Django + pycharm开发环境

由于使用的pycharm是社区版本的,django需要自行安装,那么我们下面就来折腾一番。

Django介绍

Django是一个开放源代码的Web应用框架,由Python写成。运用了MVT模式(Model,View,Template),主要目标是使得开发复杂的、数据库驱动网站变得简单,Django注重组件的重用性和“可插拔性”,敏捷开发和DRY法则(Don't Repeat Yourself)。Django还提供了可选的创建、阅读、更新、删除界面。

Anaconda安装Django2.0


在Linux环境下Anaconda安装Django,首先你需要确保安装Anaconda。查看前面的文章有涉及,这里就不展开了。

输入下面代码,就可以看到你创建的一些环境。

    conda info --envs
深度截图_选择区域_20181219054747.png

接下来创建一个新的环境来安装Django,使用"conda cteate"命令来创建,

    conda create --name django-learning python=3
深度截图_选择区域_20181219054842.png

提示你Proceed(y/n)?输入y进行安装

接下来进行访问这个新环境

    source activate django-learning

安装完成后就可以进行安装Django了,使用pip进行安装。

    pip install django==2.0.2

上面的说不不推荐使用,这里为了简单,加上sudo再次执行。

深度截图_xfce4-terminal_20181219055055.png

使用下面语句进行测试自己的电脑安装好没有

    python -c "import django;print(django.get_version())"

退出环境

    source deactivate

卸载环境

    conda remove --name django-learning --all

在windows环境下,流程基本一样,只是唯一一点儿区别是:不使用source,直接用activate [your environment name]就可以

PyCharm开源社区版+Django搭建web开发环境

因为社区版不像商业版那样可以直接通过Django来创建项目,所以我们需要先创建项目,再通过Pycharm打开。

默认的情况下,Pycharm的项目会保存在/Home/PycharmProjects下面。我们可以在Home目录下,创建这个文件夹,然后在文件夹里面打开终端。

由于我们的django是安装在anaconda下面的隔离环境的,所以pycharm是找不到的,这里通过命令行切换

source activate django-learning

如下图则切换成功。


深度截图_选择区域_20181219053018.png

创建项目

项目名称Demo自行修改

django-admin startproject Demo

创建app应用

打开Pycharm,open,选择刚才创建的项目,打开Termina,创建web应用,应用名称web自行修改

python manage.py startapp web

这里只是创建了项目module,还没有生成对应的表,作用到数据库,这个时候需要执行

在数据库中创建默认表格

python manage.py migrate

开启服务

使用 python manage.py runserver 来运行服务器。

python manage.py runserver

这只适用测试环境中使用。正式发布的服务,我们需要一个可以稳定而持续的服务器,比如apache, Nginx, lighttpd等。

深度截图_选择区域_20181219053841.png

如上图表示服务运行起来之后,可以在浏览器输入默认的访问地址127.0.0.1:8000


深度截图_选择区域_20181219054007.png

本地环境直接安装django

pycharm识别不了django的包引用,应该是项目配置哪里出问题了,这里先不去解决了,前面的过程就相当于学习了。

直接在当前环境安装django

sudo pip install django

然后解决环境依赖问题

 sudo conda  install -p /home/philos/anaconda3 django -y

pycharm可以正常识别了。

接下来进入代码层面的一些简单修改

项目结构

mamage.py

与项目进行交互的命令行工具集的接口,项目管理器
执行manage查看所有命令

python manage.py
深度截图_选择区域_20181219062052.png

Demo目录:

项目的一个容器,包含项目的一些基本配置,目录名称不建议修改

Demo/wsgi.py (Python web server gateway interface)

python 服务器网关接口,python应用与web服务器之间的接口,该文件在项目开发中一般不做修改

urls.pyweb

url配置文件,Django项目中所有地址(页面)都需要我们自己去配置URL

settings.py

项目的总配置文件,里面包含了数据库、web应用、时间等各种配置里面包含:
1)BASE_DIR,项目的根目录
2)SECRET_KEY,安全码,Django生成项目的时候自动生成
3)DEBUG,调试开关,项目发布的时候需要关闭
4)INSTALLED_APPS,自己创建的应用,需要在这里添加注册,相当于引用module,组件化插入
5):MIDDLEWARE,中间件,Django自带的工具集
6):ROOT_URLCONF,配置URLS的路径
7):TEMPLATES,模板的配置文件
8):DATABASES,数据库配置
9):STATIC_URL,静态文件的地址,Static files (CSS, JavaScript, Images)

init.py

python中声明模块的文件,内容默认为空。

深度截图_选择区域_20181219061935.png
深度截图_sun-awt-X11-XFramePeer_20181219061415.png

添加页面

在urls.py中添加代码(路由)

path(r’mainpage’, views.index, name=’index’),

这里mainpage是需要在浏览器中输入的接口名称,比如http://127.0.0.1:8000/mainpage,而index则是输入该网址之后,相应会被调用的接口。当index接口被调用时,根据上一步中的代码,index.html就会被加载。此时用户就会看到index.html的内容。

注意,如果是网站主页的话,可以写为path(r”, views.index, name=’index’),这里将接口名称置空,表示在浏览器输入http://127.0.0.1:8080,就会调用index接口,从而加载index.html页面。

在views.py中添加index接口

from django.shortcuts import render

# Create your views here.
def index(request):
    return render(request, 'index.html')

新建相关文件夹

在Demo目录下,新建templates、static两个文件夹(文件夹名字千万不能错),templates文件夹中,存放html文件;static文件夹存放资源文件,该文件夹中新建css、img、js三个文件夹,存放对应的资源文件。利用pycharm在templates文件目录下新建一个index.html的空html文件
index.html body添加

Hello World~ This is my first page.

注意在PyCharm中修改代码保存后,不用重启,PyCharm会自动部署新代码,非常方便,直接刷新浏览器即可。

打开浏览器,输入http://127.0.0.1:8000/mainpage

修改位置

默认打开的是根目录,想要/mainpage访问到,需要修改模板的DIRS路径,从而找到对应的视图。

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],  # 修改位置
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]
深度截图_选择区域_20181219071401.png

再次打开浏览器刷新,成功显示


深度截图_选择区域_20181219071621.png

设置用自己的iP地址访问项目

1.首先需要执行>python manage.py runserver 0.0.0.0:8000。
2.在setting.py里面需要添加ALLOWED_HOSTS=”*”。

0.0.0.0 让其它电脑可连接到开发服务器,8000 为端口号。如果不说明,那么端口号默认为 8000。

查自己IP,直接百度“IP”,即可看到自己的IP

推荐阅读更多精彩内容