Django开发

1.创建项目

创建项目:
在这里插入图片描述
删除内容:
在这里插入图片描述

2.创建APP

创建APP
在这里插入图片描述
注册APP:
在这里插入图片描述

3.设计表结构

在这里插入图片描述

4.在SQL中生成表

  • 工具连接MySQL生成数据库(在cmd中执行):

create database Day1 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

  • 修改数据库配置:
    在这里插入图片描述
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'MyBlog',
        'USER':'root',
        "PASSWORD":'mima',
        "HOST":'127.0.0.1',
        'PORT':'3306',
    }
}

  • Django命令生成数据库表(在tool的manage.py中执行):
    在这里插入图片描述

5.静态文件与模板文件

在这里插入图片描述

6.部门的管理

6.1部门列表
  • 基础
    编写url:
    在这里插入图片描述
    视图函数:
    在这里插入图片描述
    HTML文件:
    在这里插入图片描述
  • 显示数据库中的数据
    修改视图函数:
    在这里插入图片描述
    修改HTML文件(for循环):
    在这里插入图片描述
  • 添加部门
    添加URL:
    在这里插入图片描述
    添加视图函数:
    在这里插入图片描述
    添加HTML文件:
    在这里插入图片描述
  • 删除部门
    添加URL:
    在这里插入图片描述
    添加视图函数:
    在这里插入图片描述
    修改HTML文件:
    在这里插入图片描述
  • 修改部门
    添加URL:
    在这里插入图片描述
    添加视图函数:
    在这里插入图片描述
    HTML文件:
    在这里插入图片描述

7.模板的继承

模板文件:
在这里插入图片描述

Block可以有不同名字:
{% block content %} {% endblock %}
{% block cs %} {% endblock %}
{% block js %} {% endblock %}

三个继承:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8.用户管理

8.1用户列表展示

添加URL:
在这里插入图片描述
添加视图函数:
在这里插入图片描述
HTML文件:
在这里插入图片描述

8.2初识Form
  • views.py
class MyForm(Form):
    user = forms.CharFiled(widget=forms.Input)
    pwd = forms.CharFiled(widget=forms.Input)
    email = forms.CharFiled(widget=forms.Input)
    
def user_add(request):
    if request.method=="GET":
        form=MyForm()
        return render(request,"user_add.html",{"form":form})
  • user_add.html
<form method="post">
	{{form.user}}
	{{form.pwd}}
	{{form.email}}
</form>
<form method="post">
	{% for field in form%}
		{{ field }}
	{% endfor %}
</form>
8.3ModelForm
  • models.py
class UserInfo(models.Model):
    """ 员工表 """
    name = models.CharField(verbose_name="姓名", max_length=16)
    password = models.CharField(verbose_name="密码", max_length=64)
    age = models.IntegerField(verbose_name="年龄")
    account = models.DecimalField(verbose_name="账户余额", max_digits=10, decimal_places=2, default=0)
    create_time=models.DateTimeField(verbose_name="入职时间")
    # 级联删除
    depart= models.ForeignKey(to="Department",to_field="id",on_delete=models.CASCADE)
    gender_choices=(
        (1,"男"),
        (2,"女"),
    )
    gender=models.SmallIntegerField(verbose_name="性别",choices=gender_choices)
  • views.py
class MyForm(ModelForm):
	xx=form.CharField("....")
	class Meta:
		model=UserInfo
		fields={"name","password","age","xx"}
    
def user_add(request):
    if request.method=="GET":
        form=MyForm()
        return render(request,"user_add.html",{"form":form})
  • user_add.html
<form method="post">
	{{form.user}}
	{{form.pwd}}
	{{form.email}}
</form>
<form method="post">
	{% for field in form%}
		{{ field }}
	{% endfor %}
</form>
8.4根据ModelForm编写用户添加功能
  • 添加URL:
    在这里插入图片描述
  • 添加views.py
class UserModelForm(forms.ModelForm):
    class Meta:
        model = models.UserInfo
        fields = ["name", "age", "gender", "password", "account", "depart", "create_time"]
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        # 循环找到所有插件,添加class="form-control"
        for name, field in self.fields.items():
            field.widget.attrs = {"class": "form-control", "placeholder": field.label}

def user_model_form_add(request):
    """ 添加用户(ModelForm版本) """
    if request.method == "GET":
        form = UserModelForm()
        return render(request, 'user_model_form_add.html', {"form": form})
    # 用户POST提交数据,数据校验
    form = UserModelForm(data=request.POST)
    if form.is_valid():
        form.save()     # 校验成功则保存
        return redirect("/user/list/")
    else:               # 校验失败返回带有错误信息的表单
        return render(request, 'user_model_form_add.html', {"form": form})
  • 添加HTML
{% extends 'layout.html' %}
{% block content %}
    <div class="container">
        <div class="panel panel-default">
            <div class="panel-heading">新建用户</div>
            <div class="panel-body">
                <form method="post" novalidate>
                    {% csrf_token %}
                    {% for field in form %}
                        <div class="form-group">
                        <label>{{ field.label }}</label>
                        {{ field }}
                        <span style="color: red">{{ field.errors.0 }}</span>
                    </div>
                    {% endfor %}
                    <button type="submit" class="btn btn-primary">提交</button>
                </form>
            </div>
        </div>
    </div>
{% endblock %}
  • 一些修改
    models.py中:
    在这里插入图片描述
    setting.py中:
    在这里插入图片描述
8.5用户修改

添加URL:
在这里插入图片描述
添加视图函数:
在这里插入图片描述

HTML文件:

{% extends 'layout.html' %}
{% block content %}
    <div class="container">
        <div class="panel panel-default">
            <div class="panel-heading">编辑用户</div>
            <div class="panel-body">
                <form method="post" novalidate>
                    {% csrf_token %}
                    {% for field in form %}
                        <div class="form-group">
                        <label>{{ field.label }}</label>
                        {{ field }}
                        <span style="color: red">{{ field.errors.0 }}</span>
                    </div>
                    {% endfor %}
                    <button type="submit" class="btn btn-primary">提交</button>
                </form>
            </div>
        </div>
    </div>
{% endblock %}
8.5用户删除

添加URL:
在这里插入图片描述
添加视图函数:
在这里插入图片描述
HTML文件:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Django是一个基于Python的开源Web框架,可用于开发B2C(Business-to-Consumer)电子商务网站。B2C是一种电子商务模式,指的是企业直接面向消费者销售产品或提供服务。 首先,Django提供了强大的功能和丰富的工具,使开发者能够高效地构建B2C网站。它具有优雅简洁的代码编写方式和良好的模块化设计,使得开发过程更加灵活和可维护。 其次,Django提供了许多内置的功能和组件,以支持B2C网站的开发。例如,它提供了用于用户认证和授权的内置身份验证系统,可以轻松实现用户注册、登录和密码重置等功能。此外,Django还提供了ORM(对象关系映射)工具,使开发者可以方便地与数据库进行交互和操作。 此外,Django还支持扩展和定制,可以根据B2C网站的特定需求进行定制开发。它具有丰富的第三方插件和库,可以集成许多常见的功能,如支付、物流、购物车等。开发者还可以通过编写自定义的模型、视图和模板来满足特殊需求。 对于B2C网站来说,用户体验至关重要。Django通过提供灵活的模板系统和响应式设计,可以轻松构建美观和易于使用的界面。此外,Django还支持国际化和本地化,使得网站能够适应不同地区和语言的用户需求。 总之,使用Django开发B2C网站是一种可行且高效的选择。它提供了丰富的功能和工具,以满足B2C网站开发的需求,并且具有良好的可扩展性和定制性。无论是小型的创业公司还是大型的企业,都可以选择Django来构建强大和可靠的B2C电子商务平台。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值