-1

所以在我的views.py中我有一个工具列表,它是数据库中所有工具的列表。我想以某种方式过滤此列表以仅加载当前用户创建的工具。

该工具的所有者是一个 ShedUser 对象,其名称可以通过 tool.owner.user.username 访问,并且我尝试通过 html 文档中的 user.username 之类的内容来引用该用户。正如您在我的 html 模板代码中看到的那样

{% if tool.owner.user.username == user.username %}

在 html 中尝试过滤整个列表。我没有成功过滤python文件或html模板中的总列表。我也尝试过不同的方法来首先生成用户创建的工具列表,但也找不到这样做的方法。

这是我的文件

我的根/工具/views.py:

http://pastebin.com/ri93S7Gq

我的根/站点/模板/shelf.html:

http://pastebin.com/Qmrirk2y

我的根/工具/models.py:

http://pastebin.com/v6nS6L4B

我的根/用户/models.py:

http://pastebin.com/pNqkNVCG
4

1 回答 1

0

您需要在渲染结果之前过滤结果。

在视图中,您需要执行以下操作:

tools = Tool.objects.filter(owner__user=request.user).order_by('name')
于 2013-10-10T02:27:52.270 回答