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 字节码,让你秒懂全过程

    原文地址:https://blog.csdn.net/AliceSmith1/article/details/80051153 即便对那些有经验的Java开发人员来说,阅读已编译的Java字节码也很乏 ...

  2. [第二章]c++学习笔记5(构造函数和析构函数调用时机)

    示例函数 注:输出并不一定从main函数开始,如全局对象的初始化在main函数前执行,如构造函数中存在输出,则从构造函数的输出开始 此处6被类型转换构造函数的存在转换为临时对象赋值,而在这个过程结束后 ...

  3. Linux基础三:用户和组

    三.用户和组 1.概念 (1).用户概念: 用户是用来运行某一些进程.拥有某一些文件或目录. 在Linux里面,用户分成三大类:root用户.系统用户.普通用户. 用户是用UID来唯一标识身份的,且r ...

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

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

  5. Linux 软连接与硬连接 区别

    先说结论 软连接相当于快捷方式,访问软连接会被替换为其指向的绝对路径,如果其指向的文件被删除,则无法访问. 硬连接相当于指针,与它指向的文件都指向相同的inode,当其指向的文件被删除,inode由于 ...

  6. [Comet1173]最简单的题

    称区间$[l,r]$的"信息"为其的答案和第一个.最后一个大于$x$的位置,显然通过$[l,mid]$和$[mid+1,r]$的信息可以$o(1)$合并得到$[l,r]$的信息 考 ...

  7. [bzoj1483]梦幻布丁

    对于每一个颜色用一个链表存储,并记录下:1.当前某种颜色的真实颜色:2.这种颜色的数量(用于启发式合并的判断):3.当前答案(即有几段),然后对于每一个操作简单处理一下就行了. 1 #include& ...

  8. [atAGC050E]Three Traffic Lights

    原题意可能略微有一些复杂,这里给出简述的题意-- 给定$g_{i}$和$r_{i}$(其中$1\le i\le 3$),求有多少个整数$t$满足: $0\le t< \prod_{i=1}^{3 ...

  9. [cf582E]Boolean Function

    由于每一个运算都有括号,因此添加的运算不会改变运算顺序 先将其建出一棵表达式树,也就是维护两个栈,是节点和运算符优先级单调递增的栈(设置左括号优先级最低,右括号弹出直至左括号) 每一次运算,也就是新建 ...

  10. Codeforces 1442D - Sum(找性质+分治+背包)

    Codeforces 题面传送门 & 洛谷题面传送门 智商掉线/ll 本来以为是个奇怪的反悔贪心,然后便一直往反悔贪心的方向想就没想出来,看了题解才发现是个 nb 结论题. Conclusio ...