`

python web开发框架Django

阅读更多

众所众知用户python做web开发最常用的就是Django框架,Django直接使用WSGI通信协议,并实现了大部分Web应用相关的功能,其它基于Python的Web框架,如Tornado、Flask、Webpy都是在这个范围内进行增删裁剪的。例如Tornado用的是自己的异步非阻塞通信协议,Flask则只提供了最精简和基本的框架;其实都是基于MVC(MTV)架构

参考:http://www.liujiangblog.com/blog/36/

1.首先安装 Python3.6、pip3及Pycharm软件:我电脑的python是3.6.6;Pycharm编辑器;pip3是帮助安装django框架的,类似:pip3 install django命令;

大家可以自行百度安装

2.在Pycharm里创建项目web项目mydjango1

3.在项目mydjango1里可以创建多个APP类似模块等,我们在Pycharm下方的Terminal终端中输入命令如下命令来创建登录:python manage.py startapp login


 4.1 目录结构如上图所示,然后修改mydjango1/mydjango1/urls.py路由:导入views(from login import views) 和设置路由path('index/',views.index),

from login import views 

urlpatterns = [
    path('admin/', admin.site.urls),
path('index/',views.index),

//修改模板文件mydjango1/login/views.py

from django.shortcuts import HttpResponse

# Create your views here.
def index(request):
    return HttpResponse('Hello World!')

4.2 win + R 命令行模式,执行命令python manage.py runserver 127.0.0.1:8000  效果如下:


 因为urls.py是index  这边显示出来了简单的描述语

4.3 在项目最外层新建templates模板文件夹,在templates下新建index.html文件,简单写几行代码如下:


 修改mydjango1\urls.py路由文件如下

from login import views

urlpatterns = [
    path('admin/', admin.site.urls),
path('index/',views.index), #新增路由

修改 mydjango1\login\views.py 

def index(request):
    # return HttpResponse('Hello World!')  #注释这行
return render(request ,'index.html') # 新增这行

修改 mydjango1\settings.py

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR,'templates')],  #修改这行
'APP_DIRS': True,

 运行结果如下:


 4.4 新建static\js\jquery-3.0.0.min.js 然后修改mydjango1\settings.py 最下面新增下面代码

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR,'static'),
]

 指定资源文件路径,修改html表单文件


 效果图如下:


 效果出来了,继续修改views.py

def index(request):
    # return HttpResponse('Hello World!')
if request.method == 'POST':  #新增代码
        username = request.POST.get('username')  #新增代码
        password = request.POST.get('password')  #新增代码
        print(username,password)  #新增代码

    return render(request ,'index.html')

index.html文件中加入一行{% csrf_token %}

{% csrf_token %}
用户名:<input type="text" name="username" /><br />

输入账号密码,效果:


 修改views.py 定义一个数组保存每次的用户米密码,json格式

user_list = [] #定义一个空数组  这里跟php很像
def index(request):
    # return HttpResponse('Hello World!')
    if request.method == 'POST':
        username = request.POST.get('username')
        password = request.POST.get('password')
        print(username,password)
        temp = {'username':username,'pwd':password} #保存数据
        user_list.append(temp) #数据追加到数组里

    return render(request ,'index.html',{'data':user_list}) #返回html

index.html 需要html接收展示这些数据

 <h1>用户展示</h1>

    <table border="1">
        <thead>
            <tr>用户名</tr>
            <tr>密码</tr>
        </thead>
        <tbody>
{% for item in data %}
        <tr>
            <td>{{ item.username }}</td>
            <td>{{ item.pwd}}</td>
        </tr>
{% endfor %}
        </tbody>
    </table>
<script src="/static/js/jquery-3.0.0.min.js">

 效果如下:


-------------------------截止到上面,基本的MVC架构布局基本呈现出来了---------------------------- 

 

 是不是很好玩?感觉这个编辑器还蛮智能的,<script>标签没闭合都提示了,希望后面多学习多联系python,争取往python转吧,谢谢大家

 

 

  • 大小: 59.6 KB
  • 大小: 29.7 KB
  • 大小: 3.4 KB
  • 大小: 23.8 KB
  • 大小: 4.6 KB
  • 大小: 55.7 KB
  • 大小: 6.7 KB
  • 大小: 42.1 KB
  • 大小: 15.2 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics