小编wen*_*isa的帖子

Django Rest Framework POST嵌套对象

我现在正面临Django Rest Framework的一个小问题.我正在尝试发布一个嵌套对象的对象.

这是我的serializers.py:

class ClassSerializer(serializers.ModelSerializer):
    class Meta:
        model = Class
        fields = ('number', 'letter')


class SubjectSerializer(serializers.ModelSerializer):
    class Meta:
        model = Subject
        fields = ('title',)


class ExamSerializer(serializers.ModelSerializer):
    subject = SubjectSerializer()
    clazz = ClassSerializer()

    class Meta:
        model = Exam
        fields = ('id', 'subject', 'clazz', 'topic', 'date', 'details')
        depth = 1

    def create(self, validated_data):
        return Exam.objects.create(**validated_data)

    def update(self, instance, validated_data):
        instance.__dict__.update(**validated_data)
        instance.save()

        return instance
Run Code Online (Sandbox Code Playgroud)

create()来自views.py:

def create(self, request):
    serializer = self.serializer_class(data=request.data)
    serializer.is_valid(raise_exception=True)
    self.perform_create(serializer)

    return …
Run Code Online (Sandbox Code Playgroud)

python django rest json django-rest-framework

20
推荐指数
2
解决办法
2万
查看次数

Django如何设置模板中隐藏输入的值

如何在模板中设置who和的值?image

class CommentForm(ModelForm):
    who = forms.CharField(widget=forms.HiddenInput())
    image = forms.ImageField(widget=forms.HiddenInput())

    class Meta:
        model = Comments
        fields = ['who', 'image', 'content']
Run Code Online (Sandbox Code Playgroud)

它不起作用(原始文本):

<form method='POST' action=''>
    {% csrf_token %}
    {% render_field comment_form.content class="form-control form-control-sm" placeholder='Comment..' %}
    {% render_field comment_form.who class="form-control form-control-sm" value='{{ request.user.profile.pk }}' %}
    {% render_field comment_form.image class="form-control form-control-sm" value='{{ image.pk }}' %}
    <input class="btn btn-primary btn-sm" type="submit" value="Add comment">
</form>
Run Code Online (Sandbox Code Playgroud)

我的views.py

class ProfileView(DetailView):
    comment_form = CommentForm()
    queryset = Profile.objects.all()
    context_object_name = 'me'
    template_name = 'profile.html'

    def …
Run Code Online (Sandbox Code Playgroud)

python django

8
推荐指数
1
解决办法
2万
查看次数

如何从 json 键创建列表:python3 中的值

我正在寻找从 OpenWeatherMaps http://bulk.openweathermap.org/sample/city.list.json.gz下载的 json 文件 city.list.json 创建位置的 python3 列表。该文件通过http://json-validator.com/,但我无法弄清楚如何正确打开文件并创建键“名称”的值列表。我不断遇到json.loads关于io.TextIOWrapper等的错误。

我创建了一个简短的测试文件

[
    {
        "id": 707860,
        "name": "Hurzuf",
        "country": "UA",
        "coord": {
            "lon": 34.283333,
            "lat": 44.549999
        }

    }
    ,
    {
        "id": 519188,
        "name": "Novinki",
        "country": "RU",
        "coord": {
            "lon": 37.666668,
            "lat": 55.683334
        }

    }
]
Run Code Online (Sandbox Code Playgroud)

有没有办法解析这个并创建一个列表["Hurzuf", "Novinki"]

json python-3.x

1
推荐指数
1
解决办法
3315
查看次数

如何在Django中创建删除按钮

请帮助我了解如何制作删除按钮,它必须删除一个 Cat

class Cat(models.Model):
    class Meta():
        db_table = "cat"

    paw = models.IntegerField(default=4)
    name = models.CharField(max_length=30, null=False, default='Cat')
    age = models.IntegerField(default=False, null=False)
    species = models.CharField(max_length=50, blank=True)
    hairiness = models.IntegerField(default=False, null=False)

    def __str__(self):
        return self.name
Run Code Online (Sandbox Code Playgroud)

这是我的views.py,希望能对您有所帮助。(星期一需要我进行面试)

from django.shortcuts import render, get_object_or_404
from .models import Cat
from .forms import CatForm
from django.shortcuts import redirect

def home(request):
    template = "base.html"
    queryset = Cat.objects.all()
    context = {
        "object_list": queryset
    }
    return render(request, template, context)

def new_cat(request):
    if request.method == "POST":
        form = CatForm(request.POST) …
Run Code Online (Sandbox Code Playgroud)

python django

0
推荐指数
1
解决办法
1794
查看次数

标签 统计

django ×3

python ×3

json ×2

django-rest-framework ×1

python-3.x ×1

rest ×1