提问人:Darojuvius 提问时间:11/10/2023 最后编辑:lalliDarojuvius 更新时间:11/10/2023 访问量:24
django 模块 django-serverside-datatable 模块 queryset 必须从 models.py 中获取对象吗?
Must django module django-serverside-datatable module queryset take objects from models.py?
问:
我正在尝试使用 django-serverside-datatable 制作一个页面,我是该模块的新手。我正在尝试制作一个没有对象的querySet。都。可能吗?我正在制作简单的页面来查看 Django-serverside-datatable 的功能。这是我的功能代码:
Views.py:
class ItemListView(ServerSideDatatableView):
queryset = Articulos.objects.all()
columns = ['nombre', 'seccion', 'precio']
我从模型中获取这 3 列...... 我的Javascript:
$(document).ready(function () {
$('#mytable').dataTable({
serverSide: true,
sAjaxSource: "http://127.0.0.1:8000/data/",
columns: [
{name: "nombre", data: 0},
{name: "seccion", data: 1},
{name: "precio", data: 2},
],
});
});
这段代码运行良好。但是,问题是,我正在使用各种数据库和简单对象。一切都是不够的。所以我正在做一个 SQL 查询,但是,也许它可以,但 Django-serverside-datatables 没有检测到 SQLQuerys?只有querySet的?我像这样进行查询
cur = connections['default'].cursor()
cur.execute("SELECT id, nombre, seccion, precio FROM Prueba.baseDatos_articulos")
llistaArticulos = cur.fetchall()
但是我找不到一种方法来做到这一点,我尝试了这些事情:
class ItemListView(ServerSideDatatableView):
cur = connections['default'].cursor()
cur.execute("SELECT id, nombre, seccion, precio FROM Prueba.baseDatos_articulos")
llistaArticulos = cur.fetchall()
data_dict = []
for row in llistaArticulos
data_dict.append({
'id': row[0],
'nombre': row[1],
'seccion': row[2],
'precio': row[3]
})
columns = data_dict
class ItemListView(ServerSideDatatableView):
def get_queryset(self):
cursor = connections['default'].cursor()
cursor.execute("SELECT id, nombre, seccion, precio FROM Prueba.baseDatos_articulos")
return CursorQuerySet(cursor)
columns = ['id','nombre', 'seccion', 'precio']
class ItemListView(ServerSideDatatableView):
def get_queryset(self):
with connections['default'].cursor() as cursor:
cursor.execute("SELECT id, nombre, seccion, precio FROM Prueba.baseDatos_articulos")
queryset = []
for row in cursor:
queryset.append(row)
return queryset
columns = ['id','nombre', 'seccion', 'precio']
我不能让它工作!可能吗?
答: 暂无答案
评论