2013-03-25 2 views
0

all_ 템플릿에 QS를 추가하는 데 어려움을 겪고 있습니다. 내 콘솔에서Django 쿼리 세트가 템플릿에 속성을 추가하지 않았습니다.

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 

이 인쇄 :

은 내가 이렇게 보이는 관리자가 (나는이 이벤트가). 나는 for 루프를 빠져 나간 후 데이터가 여전히 남아 있는지 확인하기 위해 double for 루프를 디버그로 사용했다. 이상한 부분을 다음

events = Event.manager.created_by(some stuff here).order_by('-id') 

그리고 :

It works! 
    It works! 

그리고 나는 관리자를 호출하고있어 나는 그 같은 것을 템플릿에 위의 라인의 결과를 전달하고 보여 해요 :

{% 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 등) 표시되지만 "완료"부분은 표시되지 않습니다.

어디에서 왔을 까? 난 가독성을 위해 코드를 잘라 냈지만, 내가 제거한 어떤 것이라도 여기서는 관련이 없다고 생각한다.

감사합니다.

는 편집 :

는 다음 뷰 (때문에 유래 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) 
+1

을하지 않았다 내가 왜 아직도 내가 당신이 모델 객체에서 만든 dB로 변경 사항을 전달 될하기) ('방법'전화 저장 잊고 생각 모른다 : result.finished = "작동"result.save() –

+0

@ 캐서린 : 나는 당신의 답을 이해하지 못하겠습니까? 이보기의 다른 모든 구성 요소가 작동 중입니다. 표시하지 않으려는 속성을 추가하는 중입니다. 나머지 관리자는 모두 매력처럼 작동합니다. Aamir, DB가 거기에 관여하지 않고 새로운 속성을 저장하고 싶지 않습니다. 표시 목적으로 만 존재합니다. –

+0

@AlbanD보기를 표시 할 수 있습니까? 당신이 가지고있는 것은 작동해야합니다. 그래서 뷰의 어떤 것이 당신의 쿼리 세트가 재평가되어 예상 한 버전이 아닌 것으로 의심됩니다. –

답변

0

내가 이벤트 모델의 완성() 메소드를 작성 결국 이벤트를 직접 호출합니다. 템플릿에서 완료되었습니다.

그것은 그런 식으로 작동하지만, 내 첫 번째 설치가

+0

LOL, 그건 내 대답은 귀하의 질문에 있지만 누군가가 그것을 투표 그래서 어쨌든 그것을 삭제합니다. 대답이 옳지 않더라도 답을 좋아하지 않는 사람은 거의 없습니다. 대답과 같은 대답을 원합니다. – catherine

관련 문제