Django Model.create将不会保存到数据库

时间:2019-05-10 23:35:56

标签: django django-models django-generic-views django-managers

我正在尝试从视图的post方法创建模型(事务)实例,但是它没有保存到数据库中,但是令我惊讶的是,在“创建对象”之后,它并没有保存,我可以将其传递给上下文字典并使用其值,其中一些是自动生成的,但仍不会保存:(。

我尝试增加行tjat将该实例创建到该方法的第一行,但仍然无法正常工作。 (尽管Django Admin可以工作)

from django.views import generic
...
from arctic.core.models import Transaction  # Get transaction model

class MyView(generic.DetailView):
    template_name = "temps/page.html"
    model = Application
    context_object_name = "object_name"
    slug_field = 'uuid_id'
    slug_url_kwarg = 'obj_id'

    def dispatch(self, request, *args, **kwargs):
        # Check if object is accepted
        if not self.get_object().accepted or self.get_object().acknowledged:
            return HttpResponseForbidden()

        # Else, continue
        return super().dispatch(request, *args, **kwargs)

    def post(self, request, **kwargs):
        context = {}
        poll_url = "http://test-link.com/"
        trans = Transaction.objects.create(poll_url=poll_url)

它只是无法保存。 PS:我没有重写任何模型的方法

更新
这是我从追溯中得出的变量。


context 
{}  

kwargs  
{'obj_id': UUID('f4228ebf-9b26-4e95-85b1-7570d92458c4')}  

poll_url    
'https://www.test-link.com/'  

request 
<WSGIRequest: POST '/acknowledge-acceptance-and-register/f4228ebf-9b26-4e95-85b1-7570d92458c4/'>  

self    
<arctic.applications.views.MyView object at 0x000002CAA9BB1A58>  

trans
<Transaction: Transaction object (115)>  

我从中发现的是django的pk / id默认的默认增量主键一直在递增。.暗示其到达数据库,但没有保存:(,即使在Django-管理员,pk正在递增,即当我重复此请求时,它递增1,但不保存,但是使用django admin进行添加,它以pk或{{1}保存} +2(跳过其中一个就好像已保存)

0 个答案:

没有答案