【问题标题】:how to define models in DJANGO 1.9如何在 DJANGO 1.9 中定义模型
【发布时间】:2025-12-12 11:50:02
【问题描述】:

我有一个项目模型,我必须在其中使用 Django 和 DRF。所以我正在制作一个不同的文件,它从我的模型实例中获取所有对象并提供序列化。但在 django 1.9 的情况下,我无法使用 Model.serializer

 from rest_framework import serializers
 from slack.models import WebhookTransaction
 from slack.message import Message

 class WebhookTransactionSerializer(serializers.ModelSerializer)
 class Meta:
    model = WebhookTransaction
    fields = '_all_'

 class MessageSerializer(serializers.ModelSerializer)
 class Meta:
    model = Message
    fields = '_all_'

运行服务器后它给了我这个错误

File "/Users/sid/webhook10/tutorial/slack/serializer.py", line 8
class MessageSerializer(serializers.ModelSerializer)
                                                   ^
SyntaxError: invalid syntax

【问题讨论】:

  • 您的 Python 语法无效。类定义必须以: 结尾,并且以下定义需要缩进。阅读 Python 官方教程以掌握基本的 Python 语法将是值得您花时间的。 [docs.python.org/3/tutorial/index.html]

标签: django django-models django-rest-framework django-1.9


【解决方案1】:

正如评论中提到的wmorrell

类定义必须以:结尾,以下定义需要缩进。

在你的序列化器类定义后添加分号,并缩进它后面的代码,如下

from rest_framework import serializers
from slack.models import WebhookTransaction
from slack.message import Message

class WebhookTransactionSerializer(serializers.ModelSerializer):
    class Meta:
        model = WebhookTransaction
        fields = '_all_'

class MessageSerializer(serializers.ModelSerializer):
    class Meta:
       model = Message
       fields = '_all_'

【讨论】: