2

嗨,我对 django python 应用程序有疑问。我在 django 的模型中创建函数 - 这给了我模板中的真或假。

我可以访问模型中功能中的登录用户吗?

4

1 回答 1

1

您的视图方法(在 views.py 中)应该有一个“请求”参数。您可以像这样传入登录的用户:

class MyMethod(models.Model):
    def method(self, user):
        # do something with user
        return result    # true or false

def my_method(request):
    obj = MyModel.all().filter(...).get()
    result = obj.method(request.user)
    # pass "result" to template

如果你有一个对象列表并且你想从模板中传入用户,你需要先将用户放入一个变量中:

def my_method(request):
    user = request.user
    objects = MyModel.all()
    # pass "user" and "objects" to template

(inside your template):
{% for obj in objects %}{{ obj.method.user||yesno:"yeah,no,maybe" }}{% endfor %}

这在您的真/假结果上使用yesno标记。

于 2013-05-31T23:48:44.683 回答