需要一些建议。我设置了序列化。没有错误。但是在输出中我得到了空标签。我伤了头,我在做什么错了?
models.py:
class kv(models.Model):
title = models.CharField(max_length=200)
price = models.IntegerField()
address = models.CharField(max_length=200)
property_type = models.CharField(choices=realty_type_choices_admin, default='kv',
max_length=200, blank=True)
country = models.CharField(default='Россия', max_length=200)
region = models.CharField(max_length=200)
state = models.CharField(choices=state_choices_admin, default='DGO', max_length=200, blank=True, null=True)
locality_name = models.CharField(max_length=200, blank=True, null=True)
address_xml = models.CharField(max_length=200, blank=True, null=True)
city = models.CharField(max_length=100, blank=True, null=True)
serializers.py
from rest_framework import serializers
from listings.models import kv
class kvSerializerLocation(serializers.ModelSerializer):
class Meta:
model = kv
fields = ['country', 'region', 'state', 'locality_name', 'address_xml', 'city']
class kvSerializer(serializers.ModelSerializer):
category = serializers.CharField(source='get_property_type_display')
url = serializers.CharField(source='get_absolute_url', read_only=True)
country = kvSerializerLocation()
class Meta:
model = kv
fields = ['title', 'price', 'address', 'category', 'url', 'country']
views.py
from listings.models import *
from rest_framework import viewsets
from rest_framework_xml.renderers import XMLRenderer
from .serializers import kvSerializer
class KvXMLRenderer(XMLRenderer):
root_tag_name = 'feed'
item_tag_name = 'offer'
def _to_xml(self, xml, data):
super()._to_xml(xml, data)
class kvViewSet(viewsets.ModelViewSet):
queryset = Kvartiry.objects.all().filter(is_published=True)
serializer_class = kvSerializer
renderer_classes = [KvXMLRenderer]
结果:
<country>
<state/>
<locality_name/>
<address_xml/>
<city/>
</country>
这很奇怪。标签为空,根本没有region
标签
谢谢!
答案 0 :(得分:1)
我认为您的实现不适用于国家/地区,因为它是一个字段,并且无法将国家/地区值映射到Add-Computer
可以使用的您的$MaxAttempts = 0
do {
Add-Computer -DomainName "domainname.local" -Credential "admin"
$success = $?
if (-not $success) {
$MaxAttempts++
}
} until ($success -or $MaxAttempts -ge 5) {
实例。而是使用SerializerMethodField
:
kv