完成基本的创建项目、用户注册、登录、注销功能

  • 创建Django项目,创建df_user的App

  • 创建静态文件夹static(跟manage.py保持在同一级别下)

  • 复制静态文件(css + images+ js)到static路径下

  • 修改settings.py文件
  1. 修改templates路径

  1. 修改数据库

  1. 新添加静态文件加载路径

  • Pycharm连接mysql数据库以及完成mysql数据库初始化

Python学习—Pycharm连接mysql服务器

  • 安装Python下的MysqlClient
  1. 点击下载文件(图片适用于Py3.5_64位.3)

(可选)其他学习参考:点击参考

  1. 手动进行pip安装
# 进入python3的安装目录的Scripts目录
# 我的是: E:\PyCharm 2017.2.4\Python3.2.5\Scripts
pip3 install mysqlclient-1.4.2-cp35-cp35m-win_amd64.whl

  • 修改路由配置manas/urls.py

  • 添加df_user/urls.py文件

  • 配置df_user/urls.py文件(需要导入df_user/views.py)

  • 配置df_user/views.py

  • 复制df_user模板到templates/df_user目录

(可选--实际中可以直接复制文件,项目中学习Django的HTML模板化操作)

(可选--实际中可以直接复制文件,实际的HTML中以变量的形式传递参数过去的)

  • 创建模板类df_user/models.py

完成表的创建

python manage.py makemigrations     # 生产一个py文件
python manage.py migrate            # 创建表空间
 

  • 启动项目

python manage.py runserver 9999

  • 界面显示

http://127.0.0.1:9999/user/login/

注册成功后跳转登录界面:

  • 记录问题:

问题1:执行命令报错: python manage.py makemigrations
WARNINGS:
?: (urls.W005) URL namespace 'admin' isn't unique. You may not be able to reverse all URLs in this namespace
No changes detected

原因定位: 子App的urls.py里面也有一个admin的路由信息,删除即可

问题2: 误删除migrations目录后,无法初始化数据库

重新创建一个python目录,命名为migrations目录后,重新命令执行

python manage.py makemigrations     # 生产一个py文件
python manage.py migrate            # 创建表空间
 
 

其他操作(命令操作)

创建Django的App

python manage.py startapp df_user

添加新App到Django(修改setting.py)

创建表完成

python manage.py makemigrations     # 生产一个py文件
python manage.py migrate            # 创建表空间
 

模板语言

# 继承某个模板
{% extends 'df_user/base_foot.html' %} # 模板占位
{% block body%}
XXXX
{% endblock body%} # 引用变量
{{ title }}
# 取消csrf验证{% csrf_token %}# if判断
{% if request.session.user_name|default:'' != '' %}
<div class="login_btn fl">
<a>欢迎您:</a>
<a>{{request.session.user_name}}</a>
<span>|</span>
<a href="/user/logout/">注销</a>
</div>
{% else %}
<div class="login_btn fl">
<a href="/user/login/">登录</a>
<span>|</span>
<a href="/user/register/">注册</a>
</div>
{% endif %} # for循环
{% for goods in goods_list %}
<li>
<a href="/{{goods.id}}/"><img src="/upload/{{goods.gpic}}/"></a>
<h4><a href="/{{goods.id}}/">{{goods.gtitle}}</a></h4>
<div class="operate">
<span class="prize">{{goods.gprice}}</span>
<span class="unit">{{goods.gprice}}/{{goods.gunit}}</span>
<a href="#" class="add_goods" title="加入购物车"></a>
</div>
</li>
{% endfor %} # 过滤器
value|default:"什么也没有"
value|date:'Y-m-d'
list|join:", "

Django电商项目---完成注册页面和用户登录day1的更多相关文章

  1. Django电商项目---完成订单页面day5

    完成订单页面 创建订单项目 python manage.py startapp df_order manas/settings.py manas/urls.py 创建静态文件: templates/d ...

  2. Django电商项目---完成购物车页面day4

    创建购物车项目App python manage.py startapp df_cart 初始化项目: manas/urls.py manas/settings.py 创建新文件:df_cart/ur ...

  3. Django电商项目---完成商品主页显示day2

    利用DjangoAdmin初始化数据库 创建项目 python manage.py startapp df_goods 添加配置 manas/urls.py manas/settings.py 新创建 ...

  4. Django电商项目---完成用户中心(订单中心+收货地址)day7

    完成用户中心(收货地址) df_user/views.py df_user/urls.py templates/df_user/user_center_site.html 界面显示 完成用户中心(全部 ...

  5. Django电商项目---完成登录验证和用户中心(个人信息)day3

    登录验证的实现 背景说明: 用户在商品界面选择商品后,在点击购物车或者结算订单之前 需要完成用户的登录验证,这里用装饰器来完成   创建装饰器类: df_user/user_decorator.py ...

  6. Python Django(WEB电商项目构建)

    (坚持每一天,就是成功) Python Django Web框架,Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,模板T和视图V组成. 安装Pyth ...

  7. web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 ☝☝☝

    web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程    web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 学习 ...

  8. Spark大型电商项目实战-及其改良之番外(1)-将spark前端页面效果高效拷贝至博客

    Spark大型电商项目实战-及其改良这个系列的时间轴展示图一直在变....1-3篇是用图直接表示时间轴,用一段简陋的html代码表示时间表.第4篇开始才是用比较完整的前端效果,能移动.缩放时间轴,鼠标 ...

  9. web前端Vue+Django rest framework 框架 生鲜电商项目实战✍✍✍

    web前端Vue+Django rest framework 框架 生鲜电商项目实战  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频 ...

随机推荐

  1. Jwt Token 安全策略使用 ECDSA 椭圆曲线加密算法签名/验证

    椭圆曲线密码学(Elliptic curve cryptography),简称 ECC,是一种建立公开密钥加密的算法,也就是非对称加密,ECDH 与 ECDSA 是基于 ECC 的算法.类似的还有 R ...

  2. (原创)UML要点总结

    今天我们总结要点: 我们就从这张图慢慢讲. 一.类图部分 基础: 类图→长方形表示.类名在最上栏,下面是数据,第三栏是方法.其存在两种关系:关联和泛化 属性: 全形:  可见性  名:类型     重 ...

  3. Unity3D鼠标坐标转世界坐标和局部坐标

    鼠标坐标转世界坐标和局部坐标: Vector3 MousePosition2Local () { mousePosition = Input.mousePosition; //获取屏幕坐标 mouse ...

  4. LoadRuner12.53教程(二)

    使用HP Web访问示例应用程序 shǐ使   yòng用   H   P   W   e   b   fǎng访   wèn问   shì示   lì例   yìng应   yòng用   chén ...

  5. 深入理解Java重载与重写

    我们都知道Java有三大宝,分别是:多态.封装.继承.其中多态主要体现就是重写与重载(有些人认为重载根本不属于多态)两种方式,那么今天就结合研读过JVM之后自己的理解来聊聊重载与重写的VM内部是怎么实 ...

  6. UDP服务器/客户端代码示例

    UDP服务器代码: #include <errno.h> #include <string.h> #include <stdlib.h> #include < ...

  7. Matlab illustrate stiffness

    % matlab script to illustrate stiffness % using simple flame propagation model close all clear all % ...

  8. Csharp: read Sybase SQL anywhere5.5 using c#

    private void button1_Click(object sender, EventArgs e) { try { //OdbcConnection conn = new OdbcConne ...

  9. element-ui 组件源码分析整理笔记目录

    element-ui button组件 radio组件源码分析整理笔记(一) element-ui switch组件源码分析整理笔记(二) element-ui inputNumber.Card .B ...

  10. 【读书笔记】iOS-多点触摸事件与界面几何

    边缘与中心检测: CGRectGetMinX 返回矩形左边缘的坐标. CGRectGetMinY 返回矩形底部边缘的坐标. CGRectGetMidX 返回矩形中心的x坐标. CGRectGetMid ...