单击Django-tables中的行,将我带到另一个表



我基本上要单击一行或链接元素,然后将我带到另一个过滤的表。

例如,假设我有一张流派:

Romance
Horror
Comedy

我点击浪漫,然后我想要所有浪漫书籍的列表。我如何使用Django-tables 2做到这一点?

如何获得用户在Django表中单击的内容?

我试图使用table.py

class GenreTable(tables.Table):
     genre = tables.LinkColumn('books_genre_table')
     class Meta: ...

这不起作用,因为我无法传递数据并过滤它以在下一个视图/html'books_genre_table.html'

中制作表格

编辑:我已经有一个类型的详细信息页面,该页面与我要创建的此页面不同。此外,我想以一种新的方式过滤数据,该数据不需要保存为具有" PK"的详细页面。我只想让所有这些都进入一个URL。

,假设您有这样的genre URL:

path('some_path/<int:pk>/', genre_book_view, name='books_genre_table')

并有这样的观点(在这里我将使用反向与从类型获取书籍的相反关系):

def genre_book(request, pk):
     # will be using genre here to fetch all the books
     genre = Genre.objects.get(pk=pk)
     context = {
         'books': genre.book_set.all()  # using reverse relation to get the books
     }
     return render(request, 'some_template.html', context)

然后您可以这样链接视图:

class GenreTable(tables.Table):
     genre = tables.LinkColumn('books_genre_table', args=[A('pk')])
     class Meta:
        ...

相关内容

  • 没有找到相关文章

最新更新