第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Django rest framework之HyperlinkedModelSerializer筆記(三)

標(biāo)簽:
Python

除了用hyperlinks表示关系不一样以外,其它类似于modelserializer类。
serializer默认包含一个url字段代替主要关键字字段。这个url字段使用HyperlinkedIdentityField.

Absolute and relative URLs
  • 绝对路径
serializer = AccountSerializer(queryset, context={'request': request})
  • 相对路径
serializer = AccountSerializer(queryset, context={'request': None})
How hyperlinked views are determined

默认情况下,hyperlinks按‘{model+name}-detail'的方式匹配,通过pk寻找instance.

  • extra_kwargs设置view_name和lookup_field
class AccountSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = Account
        fields = ('account_url', 'account_name', 'users', 'created')
        extra_kwargs = {
            'url': {'view_name': 'accounts', 'lookup_field': 'account_name'},
            'users': {'lookup_field': 'username'}
        }
  • 字段中指明
class AccountSerializer(serializers.HyperlinkedModelSerializer):
    url = serializers.HyperlinkedIdentityField(
        view_name='accounts',
        lookup_field='slug'
    )

打印HyperlinkedModelSerializer实例的repr是一种特别有用的方法来准确检查关系是否按预期映射

Changing the URL field name

URL_FIELD_NAME

ListSerializer

设置many=True或则继承了ListSerializer就都在使用ListSerializer.
allow_empty属性默认true,判断是否允许空值。
list_serializer_class操作添加到meta里面可以定制对对象的操作.

BaseSerializer

BaseSerializer类可用于轻松支持替代序列化和反序列化样式
在这样做时,您会注意到的唯一的区别是BaseSerializer类不会在可浏览的API中生成HTML表单。 这是因为他们返回的数据不包括所有的字段信息,这将允许每个字段被渲染成一个合适的HTML输入。
图片描述
图片描述

點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消