대부분의 MVC/ORM 유형 시스템에서 django의 views.py는 컨트롤러라고하며 템플릿의보기는 템플릿입니다. 이것은 그들이 따르고있는 다른 디자인 패턴입니까? views.py라고하는 이유는 무엇입니까?왜 views.py 및 controller.py가 아닌가
0
A
답변
4
이 질문에 대한 답변이 FAQ입니다.
장고는 MVC 프레임 워크로 나타납니다,하지만 당신은 컨트롤러에게 "보기", 그리고보기 "템플릿"을 호출합니다. 어떻게 표준 이름을 사용하지 않습니까?
음, 표준 이름은 논쟁의 여지가 있습니다.
MVC의 해석에서 "보기"는 을 사용자에게 표시하는 데이터를 설명합니다. 데이터가 어떻게 보이는지는 아니지만 데이터가 표시되는 입니다. 보기에는 표시되는 데이터가 표시되며 설명하는 방법은 이 아닙니다. 그것은 미묘한 차이입니다.
우리의 경우 "보기"는 특정 URL에 대한 의 파이썬 콜백 함수입니다. 그 콜백 함수는 어떤 데이터가 임을 나타 내기 때문에 설명합니다.
또한, 프레 젠 테이션에서 별도의 콘텐츠에 대한 합리적이다 -. 템플릿에 와서 어디 장고에서는 "보기" 데이터를 제시하는 설명하지만, 템플릿에 일반적으로 대표 뷰가있는 는 방법을 설명합니다 데이터가 표시됩니다.
"컨트롤러"는 어디에 적합합니까? 장고의 경우에는 일 것입니다. 프레임 워크 자체 : 장고 URL 설정에 따라 에 적절한 요청을 보내는 기계류.
당신이 약어에 굶주려 있다면, 당신은 장고는 "MTV" 프레임 워크라고 말할 수있다 -. "보기"즉, "모델", "템플릿"및 그 고장 훨씬 더 의미가 있습니다.
당연히 하루가 끝나면 끝내야합니다. 그리고 장고의 이름이 어떻게되던간에 장고는 우리에게 가장 논리적 인 방법 인 에서 작업을 완료합니다.
관련 문제
- 1. 스칼라가 왜 모나드가 아닌가?
- 2. Environment.GetCommandLineArgs - 왜 메소드입니까? 왜 재산이 아닌가?
- 3. ASP 레이블? 왜 = 변수가 아닌가?
- 4. 데이터 모델링 - 왜 플랫 테이블이 아닌가?
- 5. 왜/MD가 컴파일러의 옵션입니까? 링커가 아닌가?
- 6. 왜 ViewController의 초기 방향이 가로 방향이 아닌가?
- 7. 왜 C#의 Math.Min/Max 변수가 아닌가?
- 8. 왜 (a, a)가 펑터가 아닌가?
- 9. 왜 내 프록시가 차단되었지만 이상한 프록시가 아닌가?
- 10. C 프로그래밍. 왜 'this'코드가 작동하지만 'that'코드가 아닌가?
- 11. 장고 : 인수가있는 views.py 호출
- 12. 왜 SwingWorker인가? 왜 단지 쓰레드 나 Runnable이 아닌가?
- 13. django-userena views.py 및 사용자 등록 문제
- 14. 내 views.py 장고
- 15. django/ajax : Views.py
- 16. 2 같아야하는 NSDate가 아닌가?
- 17. Django 파라미터에 대한 views.py 코드
- 18. 왜 has_many가 아닌가? 여기를 통해 ... 숨겨진 제한이 있습니까?
- 19. 계산기 예외 처리,이 예제는 왜 작동하지만 광산이 아닌가?
- 20. 왜 Java 7에서는 Files.readAllLines (String path)가 아닌가?
- 21. "apachectl"은 무엇을 나타 냅니까? 왜 그저 "아파치"가 아닌가?
- 22. T []는 배열을 나타내며, 왜 IEnumerable이 아닌가? <T>?
- 23. 우리는 왜 가상 소멸자가 있고 C++의 가상 생성자가 아닌가?
- 24. 왜 메소드가 toLowerCase()가 아닌가? 내 코드에서 일하는거야?
- 25. 루비가 덕 타이핑을 많이하는 것을 권장한다면, 왜 Hash.count가 Hash.length가 아닌가?
- 26. Linq 쿼리에서 IQueryable을 만들 때 왜 "새로운"변수가 아닌가?
- 27. 왜 내가 검은 색 프레임을 얻고 피커가 아닌가?
- 28. 어떻게 이것을 루프가 아닌가?
- 29. std :: vector는 예외가 아닌가?
- 30. 직렬화 어셈블리. 필요하거나 아닌가?
ahhh 예 FAQ ... 감사합니다! – Parris