2011-01-22 4 views
0

저는 장고를 매우 신중하게 사용하고 있으며 많은 즐거움을 느낍니다. 나는 내 애플 리케이션의 뷰를 다른 파일로 분해하여 app/views/(뷰 파일)이라는 디렉토리에 배치했다.Django 뷰를 별도의 디렉토리 및 파일로 분할

views 디렉토리에 __init__.py 파일을 만들었으므로 내 사이트 코드에 myproj.app.views.views을 사용해야합니다. 거친 것 중 아주 소화되지 않는 것.

주위의 아이디어. 또는 내 views 디렉토리의 이름을 다른 것으로 바꾸고 있습니다.

감사합니다.

+0

당신이 당신의 응용 프로그램이 너무 많은 일을 징후 일 수도 다른 파일에 걸쳐 그들을 슬릿해야 할 많은 의견이있는 경우. 전체 앱을 여러 개의 앱으로 분할하는 것을 고려하십시오. – Ski

+0

가능한 [Django : 여러 파일의 split.py보기] (http://stackoverflow.com/questions/1921771/django-split-views-py-in-several-files) –

답변

4

__init__.py의 다른 모듈에서보기를 가져 오기하기 만하면됩니다.

+0

그래서'__init __. py' 내부에 나는 단순히'import views'를 넣는가? – sdk900

+1

'from .views import view1, view2, ... ' –

0

내 사용자 프로필 앱 account에는 views.py, views_login.pyviews_profile.py의 세 가지보기 파일이 있습니다. 어쩌면 가장 깨끗한 것은 아니지만, 내 요구 사항에 맞게 account의 세 부분을 구분합니다. 내 apps/account/urls.py 그러므로 다음과 같습니다

from django.conf.urls.defaults import * 

urlpatterns = patterns('', 
    (r'^foo1$', 'apps.account.views.foo1'), 
    (r'^foo2$', 'apps.account.views.foo2'), 
    (r'^bar1$', 'apps.account.views_login.bar1'), 
    (r'^bar2$', 'apps.account.views_login.bar2'), 
    (r'^baz1$', 'apps.account.views_profile.baz1'), 
    (r'^baz2$', 'apps.account.views_profile.baz2'), 
) 
+0

감사합니다. Skirmantas 위에서 언급 한 것처럼 나는 내 애플 리케이션에서 계속해야한다고 생각한다. 그것은 더 많이 깨져야한다. – sdk900

관련 문제