2013-01-08 5 views
0

저는 Web2Py의 초보자입니다. 나는 사용자가 사용자 이름과 암호로 로그인해야하는 간단한 응용 프로그램을 개발하고 싶습니다. (페이스 북이나 OpenID 등의 로그인과 같은 멋진 정보는 없습니다.) 로그인에 성공하면 사용자는 일부 인터페이스를보고 특정 작업을 수행합니다. User 클래스와 JobStore 클래스 (사용자가 호출 할 수있는 특정 메서드가 정의되어 있음)를 상상했습니다. 모든 사용자와 세션에 대해 하나의 JobStore 객체 만 존재합니다. 사용자가 로그인하면 JobStore에 대한 참조로 User 객체가 생성됩니다. User 클래스는 GetRights(), RequestJob(), MarkAsFinished() 등과 같은 메소드를 가지고 있으며 JobStore는 GetUnfinished(), RemoveJobs() 등과 같은 메소드를 가지고 있습니다. 구조적으로 말하자면,이 클래스를 가지고 있어야하는 곳은 사용자가 뷰에서 수행하는 특정 액션을 기반으로합니다. 특정 메소드가 호출됩니까? 이 클래스는 Web2Py에서 사용되는 일부 표준 클래스를 상속 받습니까? 나는 어떤 종류의 객체 지향 접근법이 컨트롤러에서 사용되었지만 지금까지 아무 것도 발견하지 못한 예를 찾으려고 노력 중이다. 또한, 이것은 Web2Py 앱 개발에서 잘못된 접근입니까? 지금은 이러한 기능을 통해 복잡한 비즈니스 로직을 구현하려고하지 않습니다. 저는 전통적인 프로그래밍 방식이 어떻게 Web2Py 접근 방식으로 매핑되는지 이해하려고 노력하고 있습니다.Web2Py에서 사용자 정의 클래스

답변

2

모델 또는 컨트롤러 파일에 클래스를 정의 할 수 있지만 모델 및 컨트롤러에서 필요에 따라 클래스를 가져 와서 앱의/modules 폴더에 넣는 것이 가장 좋습니다. 클래스가 web2py 클래스에서 상속받을 필요는 없지만 원할 경우 그렇게 할 수 있습니다. 모듈 사용 및 가져 오기에 대한 자세한 내용은 herehere을 참조하십시오.

과도한 객체 지향 접근법의 예는 Movuca CMS를 참조하십시오. 대부분의 코드는 /modules 폴더에 있습니다.

+0

대단히 감사합니다! 방금 질문을 게시 했으므로 정답을 표시하기 전에 잠시 기다리는 것이 좋을 것입니다. –