Я работаю над входящим веб-крюком, используя Djangorestframework.Я должен написать представление для моей модели.Я просто хочу проверить, правильно я иду или нет? См. Это для получения дополнительной информации
class WebhookTransaction(models.Model):
UNPROCESSED = 1
PROCESSED = 2
ERROR = 3
STATUSES = (
(UNPROCESSED, 'Unprocessed'),
(PROCESSED, 'Processed'),
(ERROR, 'Error'),
)
date_generated = models.DateTimeField()
date_received = models.DateTimeField(default=timezone.now)
body = hstore.SerializedDictionaryField()
request_meta = hstore.SerializedDictionaryField()
status = models.CharField(max_length=250, choices=STATUSES, default=UNPROCESSED)
objects = hstore.HStoreManager()
def __unicode__(self):
return u'{0}'.format(self.date_event_generated)
class Message(models.Model):
date_processed = models.DateTimeField(default=timezone.now)
webhook_transaction = models.OneToOneField(WebhookTransaction)
team_id = models.CharField(max_length=250)
team_domain = models.CharField(max_length=250)
channel_id = models.CharField(max_length=250)
channel_name = models.CharField(max_length=250)
user_id = models.CharField(max_length=250)
user_name = models.CharField(max_length=250)
text = models.TextField()
trigger_word = models.CharField(max_length=250)
def __unicode__(self):
return u'{}'.format(self.user_name)
Это моя модель проблемы.После этого я попытался написать представление для этого Вот мой код
def DRSWebhookTransactionView(request):
if request.method == 'GET':
webhooktransaction = WebhookTransaction.objects.all()
serializer = WebhookTransactionSerializer(webhooktransaction, many=True)
return JsonResponse(serializer.data, safe=False)
elif request.method == 'POST':
data = JSONParser().parse(request)
serializer = WebhookTransactionSerializer(data=data)
if serializer.is_valid():
serializer.save()
return JsonResponse(serializer.data, status=201)
return JsonResponse(serializer.errors, status=400)
def DRSMessageView(request):
if request.method == 'GET':
message = Message.objects.all()
serializer = MessageSerializer(snippets, many=True)
return JsonResponse(serializer.data, safe=False)
elif request.method == 'POST':
data = JSONParser().parse(request)
serializer = MessageSerializer(data=data)
if serializer.is_valid():
serializer.save()
return JsonResponse(serializer.data, status=201)
return JsonResponse(serializer.errors, status=400)
Я не написал часть сериализатора, но просто чтобы дать представление
class WebhookTransactionSerializer(serializers.ModelSerializer)
class Meta:
model = WebhookTransaction
fields = '_all_'
class MessageSerializer(models.ModelSerializer)
class Meta:
model = Message
fields = '_all_'