第1部分我的數據表與 obj 迭代一起使用,但我正在轉向DRF-datatables .. 雖然我的示例站點運行沒有問題,但我的實際實現卻讓我大吃一驚。基本上,我整個周末都在顯示一個似乎正在加載數據的表格(因為分頁顯示了正確的信息),但我的行都是空白的:https: //i.stack.imgur.com/19LPp.png然后我嘗試在腳本中添加“列”部分,這會破壞整個表格:https://i.stack.imgur.com/1Ln4A.png如果我將 ajax 調用更改為"ajax": "/api/entry/?format=datatables",然后我得到最密切的工作表:https://i.stack.imgur.com/KvAtK.png - 但是問題仍然是行是空的,如果我添加列,那么一切都會中斷。我哪里錯了?我也沒有收到任何錯誤消息,因此很難調試數據表。也許第 2 部分..我是否需要使用 DRF 數據表?我的最終目標是能夠選擇多行,然后編輯所有這些條目的交易。最終目標示例選擇3個交易單擊表格頂部某處的下拉菜單從該下拉列表中選擇 Trade PK單擊“保存”表格顯示最新數據條目列表.htmlSerializers.pyclass EntrySerializer(serializers.ModelSerializer): class Meta: model = Entry fields = '__all__'Views.pyclass EntryViewSet(viewsets.ModelViewSet): """ API endpoint that allows groups to be viewed or edited. """ queryset = Entry.objects.all() serializer_class = EntrySerializer permission_classes = [permissions.IsAdminUser] filter_backends = (DjangoFilterBackend, OrderingFilter,)models.pyclass Entry(models.Model): ENTRY = 'entry' EXIT = 'exit' ENTRY_TYPE_CHOICES = [ (ENTRY, 'Entry'), (EXIT, 'Exit'), # (DIVIDEND_RECEIVED, 'Dividend Received'), # (DIVIDEND_SOLD, 'Dividend Sold'), ] class Meta: verbose_name = "Entry" verbose_name_plural = "Entries" trade = models.ForeignKey(Trade, on_delete=models.CASCADE, null=True, blank=True) date = models.DateTimeField(null=True, blank=True, default=datetime.datetime.now) amount = models.FloatField(null=True) price = models.FloatField(null=True) fee = models.FloatField(null=True, blank=True) entry_type = models.CharField(max_length=5, choices=ENTRY_TYPE_CHOICES, default=ENTRY) reg_fee = models.FloatField(null=True, blank=True) transaction_id = models.CharField(max_length=100, null=True, blank=True) symbol = models.ForeignKey(Symbol, on_delete=models.SET_NULL, blank=True, null=True) created_by = models.ForeignKey(User, null=True, blank=True, editable=False, on_delete=models.CASCADE)
django-rest-framework 數據表列打破表
大話西游666
2023-07-20 15:08:27