django(千锋教育)

创建一个django项目

官网下载python最新版本 配置到环境变量中

打开intlij编辑器 创建django项目

安装django:pip install django

创建django项目: django-admin startproject django01

创建djangoAPP:python manage.py startapp user

启动: python manage.py runserver

更改端口启动: python manage.py runserver 8001

更改端口启动: python manage.py runserver:0.0.0.0:8000

生成迁移文件 python manage.py makemigrations

执行秦迁移 python manage.py migrate

settings.py中配置 :

复制代码
# 表示通配符 匹配所有IP 表示可以被其他任何电脑来访问我(局域网)
# 上线后可以指定其他那些服务器来访问我
ALLOWED_HOSTS = ['*']

#注册APP user

复制代码
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'user'
   
]

user views.py中定义一个函数:

复制代码
from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.

def index(request):
    pass
    return HttpResponse('hello django')

django01中url.py中定义一个路径

匹配到user views.py中的一个index方法:

复制代码
from django.contrib import admin
from django.urls import path
from user.views import *
urlpatterns = [
    path('index/', index),
    path('admin/', admin.site.urls),

]

运行 python manage.py runserver

使用子路由 一个应用对应一个子路由

user中新建urls.py

写入:

复制代码
from django.urls import path

#子路由
from user.views import *
urlpatterns = [

    path('index/', index),
    path('index2/', index2),


]

项目django01 中urls.py使用子路由

导入 from django.urls import path,include

复制代码
from django.contrib import admin
from django.urls import path,include
from user.views import *

urlpatterns = [
    # path('index/', index),
    # path('index2/', index2),

   # 使用子路由 一个应用对应一个子路由
   # 参数1 第一层路由 随便起名字 建议见名知义 这里起为user
   #参数二 第二层路由为 include('应用名称.创建的子路由urls')
   path('user/', include('user.urls')),

    path('admin/', admin.site.urls),

]

运行 python manage.py runserver

django模型Model基本使用

复制代码
from django.db import models

# Create your models here.

class UserModel(models.Model):
    name=models.CharField(max_length=30,unique=True) #对应SQL:name=varchar(30)
    age=models.IntegerField(default=18)
    sex=models.CharField(max_length=20)
    is_deleted=models.BooleanField(default=False)

生成迁移文件 python manage.py makemigrations

执行秦迁移 python manage.py migrate

数据库表中user_usermodel 创建完成 一般为应用名称_你创建数据库时的类名

user APP中的views.py新建视图函数

复制代码
from user.models import UserModel
def get_users(request):

    users=UserModel.objects.all()
    return render(request,'index.html',{'users':users})

user APP中新增路由

复制代码
path('users/', get_users),

index中内容

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
  

    <hr>
    <h1>所有用户</h1>
    <ul>
        {% for user in users %}
            <li>{{ user.name }},{{ user.age }},{{ user.sex }}</li>
        {% endfor %}
    </ul>


</body>
</html>

启动 python manage.py runserver

django的models都有哪些字段

CharField:

  • max_length: 最大长度限制。
复制代码

python

复制代码
  my_char_field = models.CharField(max_length=100)
  • TextField:

    • 无特定参数。
    复制代码

    python

复制代码
  my_text_field = models.TextField()
  • IntegerField:

    • default: 默认值。
    复制代码

    python

复制代码
  my_int_field = models.IntegerField(default=0)
  • FloatField:

    • default: 默认值。
    复制代码

    python

复制代码
  my_float_field = models.FloatField(default=0.0)
  • DateTimeField:

    • auto_now: 每次保存对象时自动设置为当前时间。
    • auto_now_add: 当对象第一次被创建时设置为当前时间。
    复制代码

    python

复制代码
  my_datetime_field = models.DateTimeField(auto_now=True)
  • BooleanField:

    • default: 默认值。
    复制代码

    python

复制代码
  my_bool_field = models.BooleanField(default=False)
  • DateField:

    • auto_now: 每次保存对象时自动设置为当前日期。
    • auto_now_add: 当对象第一次被创建时设置为当前日期。
    复制代码

    python

复制代码
  my_date_field = models.DateField(auto_now_add=True)
  • TimeField:

    • auto_now: 每次保存对象时自动设置为当前时间。
    • auto_now_add: 当对象第一次被创建时设置为当前时间。
    复制代码

    python

复制代码
  my_time_field = models.TimeField(auto_now=True)
  • FileField:

    • upload_to: 指定上传文件的子目录路径。
    复制代码

    python

复制代码
  my_file_field = models.FileField(upload_to='uploads/')
  • ImageField:

    • upload_to: 指定上传图片的子目录路径。
    复制代码

    python

    my_image_field = models.ImageField(upload_to='images/')

相关推荐
青 春 记 忆7 小时前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
GlueNa2SiO37 小时前
03-Flask模板引擎Jinja2详解
笔记·python·flask
Capricorn19888 小时前
解决全网抄 Karpathy 导致的 LLM Wiki 污染?基于知芽 Notebook Skill 的 raw/ 笔记法排障指南
大数据·论文阅读·人工智能·笔记·论文笔记
壹玖玖肆9 小时前
openGauss使用笔记
笔记
宵时待雨9 小时前
linux笔记归纳17:传输层协议UDP
linux·笔记·udp
临沂GEO9 小时前
GEO搜索优化科普|正规地理位置流量运营入门指南
大数据·人工智能·python·流量运营
大模型码小白9 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
噜~噜~噜~10 小时前
操作系统笔记-2.3.2.1 进程互斥的软件实现方法
笔记·操作系统
荷蒲11 小时前
【小白量化Qbuddy】利用AI学习中文Python
人工智能·python·学习
云贝教育-郑老师11 小时前
【麒麟服务器系统交付:一个DBA的六年信创实战笔记】
服务器·笔记·dba