all_我很难拥有要添加到 QS 以显示在我的模板中的属性。
我有一个看起来像这样的经理:
def created_by(self, _userProfile, dateGt=None, dateLt=None):
results = self.filter(creator=_userProfile, ...) //Some QS here
for result in results:
result.finished = "It works!"
for result in results:
print result.finished
return results
这会在我的控制台中打印:(我有 2 个事件)。我做了双 for 循环作为调试,以确保退出 for 循环后数据仍然存在。
It works!
It works!
然后我打电话给经理:
events = Event.manager.created_by(some stuff here).order_by('-id')
然后是奇怪的部分:我将上面行的结果传递给模板并显示类似的内容:
{% for event in all_events %}
<li><a href="{% url "edit_event" event_id=event.id %}">{{ event.title }} Finished:{{ event.finished }}</a></li>
{% empty %}
<em>{% trans "NOTHING" %}</em>
{% endfor %}
一切都显示出来了(标题、id 等),但不是“完成”的部分。
知道这可能来自哪里吗?我修剪了代码以提高可读性,但我认为我删除的任何内容与这里无关。
谢谢!
编辑:
这是视图(由于stackoverflow 4个空格的东西而出现奇怪的缩进)
def homepage(request):
variables = {}
if request.user.is_authenticated():
datenow=datetime.now()
me = request.user.get_profile()
variables['all_events'] = Event.manager.created_by(me).order_by('-id') [:20]
context_instance = RequestContext(request)
template_name = "common/homepage.html"
return render_to_response(template_name, variables, context_instance)