美文网首页
02 django 环境的搭建和问题解析

02 django 环境的搭建和问题解析

作者: 小码码 | 来源:发表于2018-07-16 19:08 被阅读21次

1 项目知识点(pycharm中操作)

startapp appName    在pycharm中python app
makemigrations     初始化模型,migrations目录下会多出0001_initial.py文件
migrate      运行所有app的0001_initial.py文件
migrate  appName  运行指定app的0001_initial.py文件
### 备注:(1)运行完migrate后,models.py中的class都转化成数据库中的表,表名为“APP名_class名”,其中class名中的大写字母都转化成小写
          (2)django_migrations表中保存的是migrate运行的文件信息
          (3)尽量用代码的方式修改数据库,不要界面操作和代码操作混用,容易出错。

# 安装 xadmin(第三方框架)对应的安装包
django-crispy-forms>=1.6.0
django-import-export>=0.5.1
django-reversion>=2.0.0
django-formtools==1.0
future==0.15.2
httplib2==0.9.2
six==1.10.0
xlwy
xlsxwriter

#用户管理相关命令
createsuperuser   创建超级用户
#中文设置
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False
# 获取图片的相关设置
MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

2 vue环境搭建

安装webstorm
安装node.js

下载地址:http://nodejs.cn/download/    
安装参考资料:http://www.runoob.com/nodejs/nodejs-install-setup.html

安装cnpm

参考资料:npm.taobao.org
 npm install -g cnpm --registry=https://registry.npm.taobao.org

3 相关插件的安装

chrome插件 JsonView 的安装:

当我们前端在调后端接口的时候,如果想使抓取过来的json数据更加美观,可以使用谷歌的插件jsonView。

1\. 搜索 jsonView 链接:https://github.com/search?utf8=%E2%9C%93&q=jsonview。

2\. 在搜索结果列表选择自己需要的插件。(推荐这个[gildas-lormeau/JSONView-for-Chrome](https://github.com/gildas-lormeau/JSONView-for-Chrome));

3. 点击【Download Zip】,插件下载完成,解压。

4. 安装,打开chrome -更多工具- 扩展程序 (或者在地址栏输入chrome://extensions/)。

5\. 右上角勾选【开发者模式】,点击左上角【加载已解压的扩展程序...】。

6\. 选择插件目录(******\JSONView-for-Chrome-master\WebContent)。

7\. 安装完成,重新加载页面。(ctrl + R)。

4 django中知识点汇总

(1)model_to_dict的使用

from django.forms.models import model_to_dict
json_dict = model_to_dict(good)    #good是一个模型
等价于代码:
 json_dict = {}
 json_dict["name"]=good.name
 json_dict["category"] =good.category.name
 json_dict["market_price"]=good.market_price

(2)JsonResponse的使用
JsonResponse是对HttpResponse进行了封装

封装主要代码:
        kwargs.setdefault('content_type', 'application/json')
        data = json.dumps(data, cls=encoder, **json_dumps_params)

HttpResponse的写法:
        return HttpResponse(json.dumps(json_data),content_type="application/json")
JsonResponse的写法:
        return JsonResponse(json_data,safe=False)

(3)分页的配置
默认分页配置:在settings.py中进行设置:

REST_FRAMEWORK = {
    'PAGE_SIZE':2,            #每一页的条数
}

自定义分页配置:

在views中:
class GoodsPagination(PageNumberPagination):
    page_size = 2
    page_size_query_param = 'page_size'
    page_size_param = 'p'
    max_page_size = 5

# 获取列表的地方
    queryset = Goods.objects.all()[:10]
    serializer_class = GoodsSerializer
    pagination_class = GoodsPagination

(4)view之间的关系


项目中常见报错问题:

问题1:


解决办法:
将代码中的:



改为:


问题2:pip install package 中的问题

pip install mysqlclient 时报错:


尝试用pip install --upgrade setuptools 解决这一问题,尼玛的又报错了

加了一个--user,这个算是解决了

pip install --user --upgrade setuptools

可是pip install mysqlclient的报错并没有解决


相关文章

网友评论

      本文标题:02 django 环境的搭建和问题解析

      本文链接:https://www.haomeiwen.com/subject/anhwcftx.html