python3安装
--------------------------------------------------------------------
-------

最新的django依赖python3,同时ubantu系统默认自带python2与python3,这里单独安装一套python3,并且不影响原来的python环境

django demo使用sqlite3,即python中的一个模块,所以必须在安装 python前先安装sqlite3

下载最新的sqlite3解压并安装,root用户下操作

cd sqlite-snapshot-201905242258/
./configure -prefix=/usr/local/sqlite3
make
make install

vim /etc/profile
export PATH=/usr/local/sqlite3/bin:$PATH

source /etc/profile
sqlite3 versiion
SQLite version 3.29.0 2019-05-24 22:58:16
Enter ".help" for usage hints.

然后进行python的安装,以后的操作皆在普通用户下执行,必要时会使用sudo

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev
sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev
apt-get install gcc

python源码安装
--------------------------------------------------------------------------------
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz
tar -zxvf Python-3.7.3.tgz
sudo mv Python-3.7.3 /usr/local/
cd Python-3.7.3/

source /etc/profile
./configure --prefix=/usr/local/python37
make
make install

setuptools
-----------------------------------------------------------------
wget https://files.pythonhosted.org/packages/1d/64/a18a487b4391a05b9c7f938b94a16d80305bf0369c6b0b9509e86165e1d3/setuptools-41.0.1.zip
unzip setuptools-41.0.1.zip
sudo python setup.py install

pip
--------------------------------------------------------------
tar -zxvf pip-10.0.1.tar.gz
cd pip-10.0.1/
sudo /usr/local/python37/bin/python3 setup.py install

更新pip
/usr/local/python37/bin/pip  install --upgrade pip
# pip --version
pip 19.1.1 from /usr/local/lib/python3.7/dist-packages/pip (python 3.7)

在普通用户下配置Python

------------------------------------------------------------------
sudo mkdir /disk
cd /disk
mkdir python37
cd python37/
mkdir bin
cd bin/
sudo ln -s /usr/local/python37/bin/python3.7 python
将安装的python映射到普通用户下,这样只有该用户环境为Python3 环境
cd
vim .bashrc
export PATH=/disk/app/python37/bin:/usr/local/python37/bin:$PATH
source .bashrc

python安装结束,并且配置一个普通用户的python3环境,并未影响其他用户的默认python环境,这意味着如果你的服务器上有一些python脚本在运行,本次操作对这些程序无任何影响

django安装
---------------------------------------------------------------------------
安装后可以使用一系统的django命令,如果已经安装过则不需要再次安装

存在命令即表示已经安装过
$ which  django-admin
/usr/local/python37/bin/django-admin

否则进行安装
mkdir /disk/test_dj
cd /disk/test_dj
git clone https://github.com/django/django.git
pip install -e django/

新建一个项目
------------------------------------------------------------------------
cd
mkdir code
cd code/
django-admin startproject mysite

fei@ubuntu:~/code$ cd mysite/
fei@ubuntu:~/code/mysite$ ls
manage.py  mysite

$ vim mysite/settings.py
DEBUG = True
ALLOWED_HOSTS = ['*']

下面的启动需要sqlite3
python manage.py runserver 0:8302

http://127.0.0.1:8302/

新建应用
------------------------------------------------------------------------

设置模板路径
html页面的加载默认以模板路径为根,其中BASE_DIR为django自带变量
mkdir templates
vim mysite/settings.py
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR+"/templates",],

创建应用
python manage.py startapp polls

编辑视图
vim polls/views.py
from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    return HttpResponse("你好")

def demo(request):
    return render(request, 'demo.html')

def ok(request):
    return HttpResponse("OK")
                             
创建页面
创建视图中的跳转页面demo.html
vim templates/demo.html
<html>
        <body>
                <h1>哈哈哈</h1>
        </body>
</html>

配置路径
vim polls/urls.py
from django.conf.urls import include, url

from . import views

urlpatterns = [
    #url(r'^index', views.index, name='index'),
    url(r'demo',views.demo,name='demo'),
    url(r'ok',views.ok,name='ok')

]

主项目路径
在应用中创建urls.py文件管理路径
将polls模板的路径添加到主项目中
vim mysite/urls.py
from django.conf.urls import include, url
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'polls', include('polls.urls',namespace="pools")),
]

启动并访问
python manage.py runserver 0:8308

http://127.0.0.1:8308/polls/demo

django搭建示例-ubantu环境的更多相关文章

  1. PyCharm社区版+Django搭建web开发环境-2

    接上一篇:PyCharm社区版+Django搭建web开发环境-1 1. 创建好django项目并建立app应用:web 2. setting.py:配置app应用 INSTALLED_APPS = ...

  2. python +Django 搭建web开发环境初步,显示当前时间

    1.python 的安装 网上很多关于django跟python 开发的资料,这块我正在实习准备用这个两个合起来搞一个基于web 的东西出来现在开始学习,写点东西记录一下心得. 开发环境是window ...

  3. django搭建论坛之一环境配置

    环境情况: Description:    Ubuntu 15.04   Python版本:   Python 2.7.9 django版本: 1.8.4 安装django: pip install ...

  4. Python & PyCharm & Django 搭建web开发环境(续)

    由于Django自带轻量级的server,因此在前篇博文中,默认使用该server,但实际生产中是不允许这么干的,生产环境中通常使用Apache Httpd Server结合mod_wsgi.so来做 ...

  5. PyCharm社区版+Django搭建web开发环境-1

    PyCharm开源社区版不像商业版那样可以直接通过Django来创建项目,必须通过以下几个步骤进行: 1. 创建项目:在cmd命令行下输入:django-admin startproject Demo ...

  6. Python使用django搭建web开发环境

    安装 Python 去 Python 官方网站找到 Python 3 的下载地址,根据你的系统选择 32 位或者 64 位的安装包,下载好后双击安装即可. 检测是否安装完成 C:\WINDOWS\sy ...

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

    PyCharm开源社区版不像商业版那样可以直接通过Django来创建项目,必须通过以下几个步骤进行: 1. 创建项目:在cmd命令行下输入:django-admin startproject Demo ...

  8. Python & PyCharm & Django 搭建web开发环境

    一.安装软件 1.安装 Python 2.7.PyCharm.pip(Python包管理工具).Django ( pip install Django) 二.部署 1.PyCharm 新建Django ...

  9. Django搭建示例项目实战与避坑细节

    Django 开发项目是很快的,有多快?看完本篇文章,你就知道了. 安装 Django 前提条件:已安装 Python. Django 使用 pip 命令直接就可以安装: pip install dj ...

随机推荐

  1. Java基础复习之数组

    Java基础复习之:数组 简介 数组(Array):多个相同数据类型按照一定顺序排列的集合,并使用一个名字命名,通过编号的方式对这些数据进行统一管理 一维数组 一维数组的声明与初始化 int[] id ...

  2. Python基础(递归函数)

    def age(n): if n == 1: return 18 else: return age(n - 1) + 2 ret=age(100) print(ret)#216 def test(nu ...

  3. 常用的Dos(Win+R)命令

    打开CMD的方式 开始 + 系统 + 命令提示符 win + R --> 输入CMD 管理员方式运行:开始-->windows系统-->右击命令提示符-->管理员身份运行(最高 ...

  4. NFS导致df -h卡主解决

    NFS导致df -h无法使用解决 NFS服务意外断开,导致挂载的客户端"df -Th"命令无法使用,及挂载目录无法"cd""ls"解决思路: ...

  5. C++的重载操作符(operator)介绍

    原文转载至:https://blog.csdn.net/liitdar/article/details/80654324 https://blog.csdn.net/liitdar/article/d ...

  6. [cf559E]Gerald and Path

    将所有线段的端点(即$a_{i}$和$a_{i}\pm l_{i}$)离散,并按照$a_{i}$从小到大排序 定义$f_{i,,j}$表示前$i$条线段在位置$j$之前最多能覆盖的长度(默认覆盖到$j ...

  7. [bzoj1101]Zap

    1 #include<bits/stdc++.h> 2 using namespace std; 3 #define N 50001 4 int t,n,m,k,ans,mu[N],vis ...

  8. [atARC096F]Sweet Alchemy

    给定一棵有根树,记$f_{i}$表示$i$的父亲,每一个点有一个代价$c_{i}$ 给定常数$D$和$X$,再给每个点赋一个权值$v_{i}$($v_{i}\ge 0$),满足以下条件下最大化$\su ...

  9. [loj2136]地震后的幻想乡

    考虑kruskal的过程:对$n$条边随机排列(排序),令$k$表示前$k$条边恰好能使图联通,根据题目的提示,即$E(\frac{k}{m+1})=\frac{E(k)}{m+1}$ 设$p(k)$ ...

  10. [JS高程] 字符串模式匹配方法

    目录 1. RegExp 对象 2. 字符串模式匹配方法 2.1 match() , search() 2.2 replace() 2.2.1 第二个参数为字符串的应用情况 2.2.2 第二个参数为函 ...