피라미드의 경로를 구축 할 수어떻게 내가, <code>pyramid_handlers</code> 라우팅을위한 <code>controller.py</code>을 사용하고
이from pyramid.config import Configurator
import blue_yellow_app.controllers.controller as albums
def main(_, **settings):
config = Configurator(settings=settings)
config.include('pyramid_chameleon')
config.include('pyramid_handlers')
config.add_handler(
'albums' + 'ctrl_index', '/' + 'albums',
handler=albums.AlbumsController, action='index')
config.add_handler(
'albums' + 'ctrl_index/', '/' + 'albums' + '/',
handler=albums.AlbumsController, action='index')
config.add_handler(
'albums' + 'ctrl', '/' + 'albums' + '/{id}',
handler=albums.AlbumsController)
지금 내가 어떻게 추가 할 수 있습니다 하나의 특정 앨범에 대한 새 컨트롤러보기? 나는이 같은 새로운보기를 추가 할 을 시도했다 :
import pyramid_handlers
from blue_yellow_app.controllers.base_controller import BaseController
from blue_yellow_app.services.albums_service import AlbumsService
class AlbumsController(BaseController):
@pyramid_handlers.action(renderer='templates/albums/index.pt')
def index(self):
# data/service access
all_albums = AlbumsService.get_albums()
# return the model
return {'albums': all_albums}
@pyramid_handlers.action(
name='albums/{id}',
renderer='templates/albums/item.pt')
def album(self):
print ('test')
return {}
그러나 그것은 작동하지 않습니다. 경로 albums/{id}
에 대한보기를 추가하는 방법
'pyramid_handlers' 패키지는 다음과 같습니다. 오랫동안 업데이트되었습니다. 어쩌면 Pyramid에서 "어떻게 X를 얻을 수 있습니까?"라는 질문을 편집하면 외부 패키지없이 일반적인 응답을 줄 수 있습니다. –
우리는 또한 자신의 코스웨어에서이 소스 코드를 인식 할 때 Michael Kennedy를 데려 올 수 있습니다. https://github.com/mikeckennedy/python-for-entrepreneurs-course-demos/search?utf8=%E2%9C% 93 & q = pyramid_handlers & type = Code –
Mikko : 핸들러가 얼마 동안 업데이트되지 않았습니다. 그러나 나는 이것이 정말로 잘못된 길보다 더 많은 일이 될 것이라고 생각합니다. URL 발송이 크게 변경된시기는 언제입니까? 나는 실제로 알지 못한다. 그러나 나는 년 중 중요하지 않은 것으로 의심한다. –