.后台admin管理天天生鲜商品信息 models里 from django.db import modelsfrom tinymce.models import HTMLField #需要pip安装tinymce包# Create your models here. class GoodTest(models.Model): STATIC_CHOICES = ((0, '下架'), (1, '上架')) status = models.SmallIntegerField(choices=STA…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 页面静态化 为什么需要静态化首页 主页是一个网站被访问次数最多的页面,且不管用户登不登陆都可以访问,每次访问主页时,都需要从数据库中查询数据,而且每次访问几乎展示的内容都是一样的,除非后台管理员修改了主页的数据信息. 所以可以将主页单独做出来一个静态的页面(其中包括了数据信息),让未登录的用户直…
python 天天生鲜项目 django版:https://github.com/Ivy-1996/fresh flask版:https://github.com/Ivy-1996/flask-fresh…
Django 部署 uwsgi + nginx + supervisor https://hacpai.com/article/1460607620615?p=1&m=0 zonghua • 6 个月前 • 浏览 1.7K • 回帖 15Python  Django  uwsgi  NGINX  更新依赖 pip install uwsgi 编辑配置文件 uwsgi.ini [uwsgi] # Django-related settings chdir = /home/zonghua/Docum…
准备工作 1.配置settings.py内置文件 注意: AUTH_USER_MODEL配置参数要在第一次迁移数据库之前配置,否则可能django的认证系统工作不正常 2.创建应用 3.配置主路由 一.用户注册 1.创建用户注册model模型 1)设置模型抽象类 2)进入user应用设置model 这里使用的是django内部AbstractUser用户类 2.显示用户注册页面 方法一:使用FBV请求处理 FBV:(function base views) 就是在视图里使用函数处理请求. 1)定…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 用户中心-订单页面展示 编辑user/view.py文件,新增类UserOrderView class UserOrderView(LoginRequiredMixin, View): '''用户中心订单类''' template_name = 'user/user_center_order.h…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 提交订单页面展示 购物车页面点击‘去结算’按钮后,跳转至/order/place/页面,显示提交订单的信息.这里就需要将勾选框和提交按钮一起放在一个<form></form>中,提交时,html只会将checked(已勾选)的input的value值提交,因为这里有标记每行的inp…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 购物车页面展示 分析购物车页面需要后台查询的数据有哪些,最基础的是购物车中goods对象,还有一些比如购物车中每个商品的小计金额.所有商品的总数目以及总价.虽然这些信息通过前台js代码也可以进行计算展示,但是最好是后台查询数据时一并计算一起发给前端,减轻前端的计算压力. class CartVi…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 实现功能为: 在商品详情页面,选择想要购买的数量,点击“加入购物车”按钮,实现右上角的购物车数量增加,并且页面其他信息保持不变. 一般处理按钮点击后,需要重新查询刷新整个页面的信息,但是很多需求只是刷新局部或一小部分信息,因此可以通过发送Ajax请求实现,注意ajax请求都是在后台运行的,前台不…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 一般搜索功能架构为:搜索框架+搜索引擎(包括分词方式) 这里搜索框架选择: django-haystack:是django的开源搜索框架,该框架支持Solr,Elasticsearch,Whoosh, *Xapian*搜索引擎,不用更改代码,直接切换引擎,减少代码量. 搜索引擎使用: Whoos…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 编辑视图view.py 导入模型类,通过objects.all()方法获取需要展示的信息 # 获取数据库信息 # 获取商品分类 goods_type = GoodsType.objects.all() # 获取轮播商品 goods_banner = IndexGoodsBanner.object…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 自定义模型管理器类(models.Manager) 一般我们会使用预定义的模型的管理器类的方法去进行一些操作,比如查询地址模型类的所有数据:Address.objects.all(),其中Address.objects返回的就是models.Manager的对象 当我们需要重写一些预定义的方式时…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 Django自带认证系统 1.authenticate(username=username, password=password) 校验输入的用户密码是否正确时,可使用django自带的authenticate方法,若正确,则返回user对象,否则返回None from django.contr…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 HTML模板配置 1.静态文件路径设置(settings.py): STATIC_URL = '/static/' STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')] 2.html模板语言: for django 1.8: {% load…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 一.开发环境搭建 linux虚拟机环境:CentOS7 1.使用Anaconda管理环境,创建新的开发环境: conda create -n dailyfresh 2.切换至开发环境: source activate dailyfresh 3.安装package(都是用conda默认的最新版本,…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 使用uWSGI做为web服务器 django自带的web服务器是通过python manager.py runserver实现,但是在正式部署时,不会使用这种方式运行项目,而是使用uWSGI WSGI,全称 Web Server Gateway Interface,或者 Python Web S…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 编辑用户订单页面JS 根据订单状态显示下一步操作是什么,若用户点击‘去评价’,则通过 location.href= '/order/comment/'+order_id 访问订单评价url //根据订单状态显示下一步操作 $('.oper_btn').each(function(){ statu…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 订单页面支付JS 1. 点击‘去支付’按钮,发送ajax请求,后台视图调用支付宝支付接口时,返回的是一个支付界面的url,需要通过window.open(data.pay_url),引导用户浏览器打开支付宝返回的支付url 2. 引导完url之后,继续发送查询ajax请求,后台视图调用支付宝查询…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 列表页 设计URL 列表页层级为/goods/list/goods_type_id,又因为列表页需要分页和排序,因此url需要包括页码信息和排序方式,即/goods/list/goods_type_id/page/sort_method/ 为了符合restful规范,即每个url(除了?的参数部…
本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p=1 FastDFS FastDFS 是用 c 语言编写的一款开源的分布式文件系统.FastDFS 为互联网量身定制, 充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用.高性能等指标,使用 FastDFS 很容易搭建一套高性能的文件服务器集群提供文件上传.下载等服务. FastDFS 架构包…
一 .django 本地项目部署uwsgi 1 本地部署项目 uwsgi安装测试 通过uwsgi 进行简单部署 安装uwsgi命令:pip install uwsgi -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com 提示:-i 后面使用是豆瓣加速源 2 测试uwsgi 是否安装成功 项目的根目录新建 uwsgi_test.py # 测试py文件 # 测试代码 # 启动 uwsgi --http :8001 --ws…
https://github.com/lannyMa/django-uwsgi-nginx.git 单机调试启动-确保项目代码没问题 - 克隆代码进入项目 git clone https://github.com/lannyMa/django-blog-tutorial.git cd django-blog-tutorial - 创建并进入虚拟环境 pip install virtualenv virtualenv blogproject_env - 如果需要mysql-devel yum in…
一.下面先交代一下测试云主机 cpu: root@alexknight:/tmp/webbench-1.5# cat /proc/cpuinfo |grep model model : model name : Intel(R) Core(TM) i5-.40GHz root@alexknight:/tmp/webbench-1.5# mem: root@alexknight:/tmp/webbench-1.5# free -m total used free shared buffers ca…
@ 目录 1.说明 2.模型类的设计 3.代码的具体实现 4.详情地址 关于作者 1.说明 models是django的很重要的部分,所以深入研究. 本文章的所研究项目为黑马教育python课程中的项目实战-天天生鲜项目 这里就简单的描述下,会把研究的代码放在github,多研究几个来形成自己的知识体系 2.模型类的设计 3.代码的具体实现 文件夹中只有代码的models部分 该项目中一共有4个大类:cart(购物车),goods(商品),order(订单),user(用户) 然后里面有一个db…
1. 概念解析(wsgi协议,uwsgi协议,uWSGI) 参考:https://www.cnblogs.com/wspblog/p/8575101.html 1.1 现实世界的web请求: 1.2  wsgi协议,uwsgi协议和uWSGI a. WSGI(wsgi): 全称 Web Server Gateway Interface,或者 Python Web Server Gateway Interface ,是为 Python 语言定义的 Web 服务器和 Web 应用程序或框架之间的一种…
天天生鲜-思路数据库设计 天天生鲜-各个App 全文检索 天天生鲜-静态文件 一.项目目录 daily_fresh_demo - daily_fresh_demo - df_cart # 购物车功能 - df_goods # 商品功能 - df_order # 订单功能 - df_user # 用户功能(包括登录验证等相关功能) - static # 静态文件 - templates # 前段模板- whoosh_index # 全局索引文件 db.sqlite3 manage.py  注:这个…
1 需求分析 github源码:https://www.github.com/wangyingchuang/dailyfresh 1.1  用户模块 1) 注册页 l  注册时校验用户名是否已被注册. l  完成用户信息的注册 l  给用户的注册邮箱发送邮件,用户点击邮件中的激活链接完成用户账户的激活. 2)登陆页 l  实现用户的登录功能 3)用户中心 l  用户中心信息页,显示登录用户的信息,包括用户名.电话和地址,同时页面下方显示出用户最近浏览的商品信息. l  用户中心地址页:显示登陆用…
一.安装uwsgi 通过pip安装uwsgi. pip install uwsgi 测试uwsgi,创建test.py文件: def application(env, start_response):     start_response('200 OK', [('Content-Type','text/html')])     return [b"Hello World"] 通过uwsgi运行该文件. uwsgi --http :8001 --wsgi-file test.py 常用…
Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt) 作者: Desmond Chen,发布日期: 2014-05-17, 修改日期: 2014-05-18 在Django 1.6中的settings.py中可以修改130多项设置, 但大多数都继承自默认值. 设置是在web服务器启动时首次载入的, 服务器重启时重新载入, 因此, 程序员们应尽量避免修改正式服务器上使用的settings.py文件. 以下是一些我们…
最近使用django写了一些项目,不过部署到服务器上碰到一些问题,还有静态文件什么的一堆问题,这里总结一下碰到的问题和解决方案,总体思路是按照官方文档走的. 原文地址:http://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html 讲的很清楚,不过还是需要一些注意的地方 对于uwsgi+nginx的部署方式,它的访问关系大概是: the web client <-> the web server <-&…