view.py
from django.http import HttpResponse
from django.shortcuts import render
import cx_Oracle as cx # 导入模块
from django.shortcuts import render, render_to_response
# oracle数据库连接
'''
推荐使用第三方包
不建议配置数据库(类似Android里面的自带数据库)
配置的数据库,会降低sql执行效率
降低书写sql语句的能力
'''
def Oracle_Connect(request):
con = cx.connect('账号', '密码', '10.134.1.143/orcl') # 创建连接
return con
# 利用Django显示前端界面显示
def view(request):
return render(request, 'index.html')
'''
URL简单信息传输
该方式将数据与视图混合在一起,不符合 Django 的 MVC 思想,一般就用于传递数据
一般用于单独数据传递,如在Android开发中用到服务器数据不需要后台生成界面,可以用这个传递
但是在web开发是最经常的不是获取单独的一串数据而是经过数据渲染以后的界面(一般可以配合ajax使用)
Django采用模板方式进行视图和数据分离
模板是一个文本,用于分离文档的表现形式和内容
'''
def helloword(request):
return HttpResponse("helloword")
'''
django模板简单介绍及用法介绍:
基础语法:view:{"HTML变量名" : "views变量名"}(view中的数据传递没有限制十分随意,可以传python中的所有对象)
HTML:{{变量名}}
在view和html里面数据的发送和使用是分开的
在view可以不加修饰的直接传递也可以传送已经处理过的数据
在html可以直接应用第三方框架(Jquery,Layui,Vue等)进行接收并使用,也可以在接收是直接截取数据
总是Django的数据传递使用十分方便
过滤器使用:
介绍:模板过滤器可以在变量被显示前修改它,同时过滤器支持嵌套使用
用法:{
{ 变量名 | 过滤器:可选参数 }}
参数举例:单过滤{
{ name|lower }}---lower(转为小写字符)
嵌套过滤{
{ name|first|upper }}-----把传递的数据的第一个字符变为大写
html中的一些关键词介绍:
default:设置默认词,如果后台传递的数据为false则显示默认值-----{
{ name|default:"菜鸟教程666" }}
length:显示后台传递的数据长度(分字符串,字典,集合,列表)------{
{ name|length}}
date:可以指定日期显示格式------{
{ time|date:"Y-m-d" }}
还有很多关键词不在一一列举
html中的数据加工(标签):
if/else标签:用于数据的筛选
if里面的条件支持and or not等连接判断
格式:{% if condition1 %}
... display 1
{% elif condition2 %}
... display 2
{% else %}
... display 3
{% endif %}
for标签:配合python里面的循环使用,用于数据渲染,常用来列表生成等动态效果(一般使用前端的框架可以提供数据的填充功能)
格式:{% for i in views_list %}
{
{ i }}
{% endfor %}
'''
def runoob(request):
'''
# 日期格式演示
import datetime
now = datetime.datetime.now()
return render(request, "runoob.html", {"time": now})
'''
# for标签演示
list_data = ["生而为人,我很抱歉", "好好看,好好学", "真不错,住在山里真不错"