熟悉MVC结构的话挺容易上手的
django部署虚拟环境
## 安装所需软件包
sudo dnf install mariadb mariadb-server python3-virtualenv python3-devel
## 配置mysql
mysql_secure_installation
## 建立虚拟Python环境
cd ~
python3 -m virtualenv DjangoDevelop
cd DjangoDevelop
source bin/activate #进入虚拟环境
pip install django
## 建立项目
django-admin startproject Project
cd Project
python manage.py runserver 127.0.0.1:8080
## 配置项目与mariadb链接
pip install pymysql
'''
Project/__init__.py
import pymysql
pymysql.install_as_MySQLdb()
---------------------------------------------
Project/setting.py
DATABASES =
{
'default':
{
'ENGINE': 'django.db.backends.mysql',
'NAME': "hello",
'USER': "username",
'PASSWORD': "password",
'HOST': "127.0.0.1",
'PORT': "3306",
'OPTIONS': {'autocommit': True,}, #设置驱动自动提交
}
}
'''
项目目录结构解析
├── manage.py #项目命令交互管理器
└── Project #项目容器
├── settings.py #项目配置
├── urls.py #URL路由
└── wsgi.py #供nginx等web服务器调用的网关接口
编写index页面
- 新建views.py
- urls.py建立index路由
from . import views url(r'^index/',views.index) #正则表达时匹配index/
- views.py建立
from django.http import HttpResponse #调用httpresponse返回html内容 def index(request): #建立index函数响应请求 return HttpResponse("<h1><a href='https://www.slll.info' target='_blank'>www.slll.info</a></h1>") #返回html内容
建立APP及目录结构
python manage.py startapp App
-settings.py
INSTALLED_APPS = [
'Project.App' #加入app到settings
]
目录结构
├── admin.py #不知道
├── apps.py #不知道
├── migrations #数据迁移模块
│ └── __init__.py
├── models.py #数据模块
├── tests.py #不知道
└── views.py #请求处理
-urls.py
import Project.App.views as apv
urlpatterns = [
url(r'^index/', apv.index),
]
-App/views.py
from django.http import HttpResponse
def index(requests):
return HttpResponse("hello")
建立数据表
建立数据表
-models.py
class AppUsers(models.Model):
username = models.CharField(max_length=32,default='username', primary_key=True)
password = models.CharField(max_length=32,default='password')
生成数据表
python manage.py makemigrations App
python manage.py migrate
获取数据库数据
-views.py
from . import models
def index(requests):
user_list = []
users = models.AppUsers.objects.all() #get all
#users = models.AppUsers.objects.get(username='admin') #get username 'admin'
for obj in users:
user_list.append({'username':obj.username,'password':obj.password})
return render(request,'QSMoodle/login.html',{'user_list':user_list})
模板获取数据
{% for user in user_list %}
{{user}}
{% endfor %}
;
{{users.username}}
{{users.password}}
感谢楼主的分享
这个不错哦,我好好读读!
相当精彩的博客!
看了一遍原文,不懂;又看了一遍原文,还是不懂。再看了一遍原文,实在不懂。最后看了一遍回帖,懂了我为什么不懂……于是我懂了,人有时候要学会放弃。
很荣幸来到这里参观!
没屏蔽,直接评论了
可以的 谢谢老哥