2010-02-18 3 views
1

장고에 양식이 있습니다. 사용자가 인증을 받으면 편집 할 수있는 양식을보고 싶습니다. 그렇지 않은 경우 표시 전용 양식을 표시하고 싶습니다.Django : 사용자 인증 여부에 따라 양식을 표시/편집 하시겠습니까?

두 경우 모두 동일한 정보를 보여주고 싶습니다. 인증 된 경우 양식을 편집 할 수 있기를 바랍니다.

장고에서이 작업을 수행하는 쉬운 방법이 있습니까? 템플릿이나 뷰에서 user.is_authenticated를 확인할 수 있습니다. 템플릿에서 템플릿 코드가 중복되는 것을 원하지 않습니다.

나는 this question을 찾았지만 대답은 미묘하게 복잡해 보입니다. 반드시이 문제를 처리하기 위해 장고에 내장 된 것이 있어야합니까?

답변

2
이 같은

아마 뭔가 :

{% if user.is_authenticated %} 
    {{form.as_table}} 
{% else %} 
    {% for field_name, value in form.data.iteritems %} 
     {{field_name}}: {{value}} 
    {% endfor %} 
{% endif %} 
관련 문제