如何在django

时间:2016-06-14 17:54:40

标签: python django

在Rails中,如果我想设置一个“上下文”,它基本上是每个视图需要的对象,如登录用户的用户对象,或者说商店/帐户/位置对象,我将如何在django框架中的每个视图?

在Rails中我会做这样的事情:

class BaseController
  before_action :setup_context


  def setup_user
   @user = # load user from db
   @location = # load location for user
  end
end

class HomeController < BaseController

  def index
    # I now can use the variables @user and @location
  end

end

Django是否有这些类型的事件我可以加载对象并在我的所有视图中使用它们?

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

如果我理解你的问题,我认为你正在尝试做这样的事情。我自己对Django仍然缺乏经验,所以请耐心等待。

基本示例:

views.py

from django.shortcuts import render
from exampleapp.models import User  # User object defined in your models.py

def index(request):
    context = { 'users': User.objects.all() }
    return render(request, 'exampleapp/example.html', context)

example.html的

{% if users %}
    {% for user in users %}
        <p>{{ user.name }}</p>
    {% endfor %}
{% else %}
    <p>No users.</p>
{% endif %}

如果我在你的问题上错过了标记,我表示道歉。