第二单元 初始django

这篇博客详细介绍了如何使用Django进行项目初始化、创建应用、配置模板、ORM映射、视图、路由设置、状态码理解以及静态资源管理。从项目创建到运行,一步步解析关键步骤和代码实现。

1.django项目和应用创建命令

项目创建

django-admin startproject 项目名

启动项目

python manage.py runserver

创建子应用

python manage.py startapp 子应用名

2. 配置模板

1.在setting文件中配置模板

TEMPLATES = [  # 模板配置
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

2.2.在根目录下创建template文件夹

3.模板页面的渲染

3.1渲染

{{}}

3.2标签

{% for var in sequence %}
    {{ var }}
{% endfor %}

{% if test_list %}
    成功执行的代码
{% else %}
    不成功执行的代码
{% endif %}

4.ORM映射

4.1.安装自定义应用

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapp', # 注册子应用
]

4.2.配置数据库

# 配置信息
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', # 使用mysql数据库
        'HOST': 'localhost', # 主机
        'PORT': 3306, # 端口
        'USER': 'root',  # 用户名
        'PASSWORD': 'fushijie', # 密码
        'NAME' : 'game' # 数据库
    }
}

4.3.在与项目同名的init.py文件中添加以下代码

import pymysql
pymysql.install_as_MySQLdb()

4.4.编写模型类

在子应用的models.py文件中编写代码

# 模型类 会自动生成id字段
class Game(models.Model):
    # CharField 字符串 max_length 最大长度 verbose_name 后台管理的字段名
    name = models.CharField(max_length=20,verbose_name='角色名')
    # IntegerField 整型
    atk = models.ImageField(verbose_name='攻击力')
    level = models.ImageField(verbose_name='等级')

4.5.迁移

迁移之前要先win+R–cmd

下载一下 pip install Pillow 否则会报错


python manage.py makemigrations  # 生成迁移

python manage.py migrate  # 执行迁移

5.视图

在子应用的views.py文件中编写视图代码,来处理业务逻辑

# 视图函数
def MyView(request):
    # return HttpResponse('<h1>这是我的第一个视图</h1>') # 返回一个响应
    content = { # 传递给页面的数据,字典的格式
        'money': 10000,
        'score':[100,90,80,84],
        'game':{
            'name':'龙傲天',
            'atk':'999',
            'def':'10',
            'level':'18',
        }
    }
    return render(request,'index.html',content) # 返回一个模板页面

6.路由

在urls.py中
为了让视图生效,需要编写路由代码

from myapp import views
 # 主路由
urlpatterns = [
    path('admin/', admin.site.urls),
    path('myview/', views.MyView)
]

7.状态码

常见的状态码

状态码意义
200请求成功
300客户端的请求
301客户端请求的资源已被永久移动到新的 URL
302客户顿请求的资源被临时移动,客户端继续使用原有 URL;常用于三方登录之后的跳转
400服务端的请求
401请求需要经过身份验证
404客户端请求的资源找不到
502服务端内部错误,服务端错误的网关

8.静态资源

  • settings中配置静态文件目录路径,添加如下内容
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
)
# STATICFILES_DIRS 该配置项用来告诉 django 在查找静态资源时,应该访问哪个目录
  • 在项目中创建***static/***目录,***static/目录下创建专门保存图片的img/***目录,在里面存一张图片
project/
    project/
    app/
    template/
    static/
          img/
             1.jpg

有了图片,接下来在模板页面中去引入并使用它,打开index.html进行修改

<img src='{% static "img/1.jpg" %}' alt="图片">
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值