django 学习记录(一)

不使用 drf 来实现django 的 api 接口 json序列化

from django.shortcuts import render
from django.views.generic.base import View

from users.models import UserProfile

# Create your views here.
#  通用类型

class GoodsView(View):

    def get(self, request):
        goods = UserProfile.objects.all()
        good_list = []

        # for good in goods:
        #     good_dict = {}
        #     good_dict["name"] = good.username
        #     good_dict["email"] = good.email
        #     good_list.append(good_dict)

        # model_to_dict 直接转为dict 不用每个字段都去填写
        ## 同时有个问题 就是 time 和 image 无法正常序列化
        from django.forms.models import model_to_dict
        for good in goods:
            good_dict = model_to_dict(good)
            good_list.append(good_dict)

        # from django.http import HttpResponse
        # import json
        # return HttpResponse(json.dumps(good_list), content_type="application/json")

        # 这样就是序列化 时间和图片
        from django.core import serializers
        import json
        json_data = serializers.serialize("json",goods)
        json_data = json.loads(json_data)
        from django.http import HttpResponse,JsonResponse
        import json
        # return HttpResponse(json.dumps(json_data), content_type="application/json")
        return JsonResponse(json_data,safe=False)

原文地址:https://www.cnblogs.com/libaibuaidufu/p/10164069.html

时间: 2024-10-12 21:48:41

django 学习记录(一)的相关文章

Django 学习记录 第一天

从这篇文章开始,来记录我的Django学习过程. Day-1 一 首先是安装Django版本的选择,我所选择的是Django1.11.为什么选择1.11呢,因为它是长期技术支持版(LTS),官方会加上新特性,和修复一些BUG. 好了,版本选择好了,该安装了,在我这儿安装有两种方法: 1.      打开CMD,利用Python包管理工具pip进行安装: pip install Django == 1.11.11 (后面写自己要用的Django版本,如果不写,默认安装最高版本.) 2 .  打开P

django学习记录--第一个网页“hello django”

一.安装django 下面两种方法任选其一 1.pip或easy_install 安装 pip install django easy_install django 2.到django官网(https://www.djangoproject.com/download/)下载django压缩包,下载完成后解压,在解压的目录下运行"python setup.py install"安装django. 二.创建第一个网页 1.新建项目project  在命令行运行"django-ad

Django学习记录_安装(一)

如果有报错先安装setuptools yum install python-setuptools 下载pip wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gz 源码安装pip tar xf 1.5.5.tar.gz cd    pip-1.5.5/ python setup.py install pip安装django1.7 pip install Django==1.7 出现 "Cleani

django学习记录1

在看django的基础知识,还是按照以前一样来总结,还是晚上再统一总结好了,边看边总结好像效果不大. 第一部分是生成数据库,用python manage.migrate命令来生成django的基础架构数据库,python manage.py startapp xxx,创建自己的项目然后的话可以定义自己的模型,构建的时候可以自己添加__str__()方法,这样自己就可以通过字符显示自己的模型对象,而不是一串对象代码,模型层还有迁移功能,首先是自己可以去修改自己的模型,然后运行python mana

django学习之Model(五)MakingQuery

接着上篇. 10-一次更新多个对象 有时想要对QuerySet中的所有对象的某一个field来设定一个值,这时候可以像下边这样用update(): # Update all the headlines with pub_date in 2007. Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same') 这样使用的update()只能是没有关联关系的model或者有ForeignKey的

django学习之Model(三)QuerySet

接下来主要学习Models中的Making queries 写好models.py后,django会自动提供一个数据库的抽象API,来实现CRUD(create, retrieve, update, delete).这一部分主要就是怎样去用这些API.在data model reference会有全部的讲解. 接下来都会反复用到下边这个例子,或者在这段代码上进行扩展: from django.db import models class Blog(models.Model): name = mo

Django学习之 - 基础部分

学习记录参考: 讲师博客:http://www.cnblogs.com/wupeiqi/articles/5433893.html 老男孩博客:http://oldboy.blog.51cto.com/ 运维平台参考:http://oldboy.blog.51cto.com/2561410/1123127 WEB框架简写与解释解释:Web应用框架有助于减轻网页开发时共通性活动的工作负荷,例如许多框架提供数据库访问接口.标准样板以及会话管理等,可提升代码的可再用性. MVC框架 == Model

Python框架之Django学习笔记(十七)

Django框架之表单(续二) PS:本博客欢迎转发,但请注明博客地址及作者~ 博客地址:http://www.cnblogs.com/voidy/ <.)#)))≦ 今天的这篇博客将是Django学习笔记博客的最后一篇,基本每周最少一篇的Django框架学习,坚持到今天也实属不易,当然了,这个框架的学习仅仅是Django框架的基础部分了,不过也够我们平时搭个简易的网站或者个人博客什么的.希望通过这一系列的博文,让大家也从中体会到Django框架的魅力所在,如果很不幸,你没有体会到,只能说明我水

django学习笔记之models

djang models 1. 创建model from django.db import models class MyObject(models.Model): attribute1 = models.CharField(max_length=50) 2. 创建记录 2.1  p = MyObject(attribute=xxxx) p.save() 2.2  p = MyObject.objects.create(attribue=xxx) 3. 更新记录 p = MyObject.obj