我一直在为这几天挣扎了好几天。 我想使用django-datatable-view的xeditable列整合。我的代码正确加载数据表(see here),但每当我指定make_xeditable列时,就会出现500内部服务器错误。我已经看过几页讨论django-datatable-view但没有讨论x-editable选项的页面(由于代表不够详细而无法发布链接)。Django-datatable-view X可编辑的内部服务器错误
使用在线实时演示(here)(版本0.7)中的代码片段不会执行任何操作。表格加载但列不可编辑。
class PriceListDataTableView(XEditableDatatableView):
model = PriceList
datatable_options = {
'columns': [
'id',
'date',
'product',
'unit',
("Price", 'price', helpers.make_xeditable),
]
}
我得到了最新版本(0.9)在我的本地主机上运行,他们的例子的作品!但我无法在自己的应用程序中使用它。两种设置Django的运行1.8
这里是我的模型:
class PriceList(models.Model):
# Fields
date = models.DateField(verbose_name="Price list date")
product = models.CharField(verbose_name="Product name", max_length=100)
unit = models.CharField(verbose_name="Unit", max_length=6)
price = models.DecimalField(verbose_name="Price", decimal_places=2,
max_digits=10)
这里是我的模板:
{% extends "agrichem/base.html" %}
{% block content %}
<script>
$(document).ready(function() {
<!-- Initialization for x-editable tables -->
$.fn.editable.defaults.mode = 'inline';
$(function(){
var xeditable_options = {};
datatableview.initialize($('.datatable'), {
fnRowCallback: datatableview.make_xeditable(xeditable_options),
});
});
});
</script>
{{ datatable }}
{% endblock %}
这是我的观点:
class PriceListDataTableView(XEditableDatatableView):
model = PriceList
class datatable_class(Datatable):
class Meta:
columns = ['id', 'date', 'product', 'unit', 'price']
processors = {
'price': helpers.make_xeditable,
}
如果我删除processors
块,我的表加载,但不可编辑。有了它,我弹出一个说:
DataTables警告:表id = DataTables_Table_0 - Ajax错误。有关此错误的详细信息,请参阅datatables.net/tn/7
只要服务器不返回一个2xx代码发送此弹出错误,因此,它基本上是因为下列位:
在控制台我得到一个500内部服务器错误(破坏堂妹链接数的):
jquery.min.js:4 GET ht__tp://127.0.0.1:8000 /价目表/画= 1 & column%5B0%5D%5Bdata%5D = 0 & columns%art = 0 & length = 25 &搜索%5Bvalue%5D = &搜索%5Bregex%5D =假& _ = 1497779941842 500(内部服务器错误)
我现在兜兜,我需要一些帮助。有人得到这个工作?
编辑: 我现在已将django-datatable-view降级到版本0.8,并使用了以下建议的语法,并且我也得到了SAME 500内部服务器错误。我怀疑我在某处丢失了一些必要的设置步骤,但是文档,比如它并没有说明什么。
我试过了,如上面在我的问题中所述。表格加载但列不可编辑。 – LumeShadow
糟糕:忘记了页面初始化。请参阅上面的修改。 – mikep
对不起,仍然载入表格,但列不可编辑... – LumeShadow