2015-01-30 6 views
1

을 정의하지 않고 나는 내 컨트롤/default.py에 추가하도록 요청하고있다 : 나는 이동하려고하면 괜찮지 만web2py : 전역 이름 '클래드는'나는 현재 web2py 튜토리얼 다음입니다

def entry_post(): 
"""returns a form where the can entry a post""" 
form = crud.create(db.post) 
return dict(form=form) 

to : mywebsite/app/default/entry_post 티켓 오류가 발생했습니다. 전역 이름 'crud'가 정의되지 않았습니다.

이제 web2py 설명서를 읽었으며 crud.create (db.table)가 유효한 문법인데, 왜 이것이 일어나는가? 답변

+0

로 다시 작성해야합니다. 당신은 당신의 프로그램 초기에'crud = something'을 가지고 있습니까? 또한 실제 프로그램이 올바르게 들여 쓰기되어 있습니까 (귀하의 게시물에 없습니다)? – rlms

+0

그것은 들여다 보았지만 내가 보지 못한 수입에 오타가있었습니다 ('Crud'의 경우 자본없이 중요 함). – Lipton

답변

3

BTW. Crud는 우리가 더 이상 지원하지 않는 오래된 API입니다. 당신은`crud`라는 변수를 정의 할 필요가 있기 때문에

form = crud.create(db.post) 

form = SQLFORM(db.post).process() 
+0

답변 해 주셔서 대단히 감사합니다. 문제가 해결되어 gluon.tools에서 가져온 오타였습니다. 지원이 종료 된 경우 사용하지 않는 것이 좋습니다. 공식 설명서는 권장하지만, 하지만 그건 제 5 판 때문일 수 있습니다. (공식 링크는 6 번째가 완료되어야 함에도 불구하고) 시간을내어 소프트웨어를 개발해 주셔서 감사합니다. 마누엘 – Lipton

0

Crud에 대한

덕분에 수입 및 인스턴스화해야합니다 : 그것은 어떤 컨트롤러에서 사용할 수 있도록이 종종 모델 파일에서 수행

from gluon.tools import Crud 
crud = Crud(db) 

.