2015년 8월 20일 목요일

[web2py] dropdown으로 표시되는 sqlform만들기

[web2py] dropdown으로 표시되는 sqlform만들기


web2py에서 기본 input form의 형태는 그냥 text를 입력할 수 있는 textfield이다.
헌데 나는 아래 그림처럼 화살표를 누르면 목록으로 보이는 input form을 만들고 싶었다.





예전에도 시도하다가 안되서 포기 했었는데 이번에는 포기하고 싶지 않았다.
sqlform이다 보니 DB랑 연결되는 것이고 알아보다보니 db에서 Table을 생성할때 Field의 속성에서 requires에 IS_IN_SET또는 IS_IN_DB를 사용하면 select box(dropdown)이 나온다는데 나는 어찌해도 안나오더라...하루종일 이것저것 해도 안되는....ㅠㅠ

그런데 너무 간단하게 해결했다.

기존에는 내가 계속 시도할때

db.define_table([Table 이름],
                     Field([Field이름], requires=IS_IN_SET([넣고 싶은 목록]))

의 형태로, requires를 Field를 설정하는 곳 안에 넣었었다.
그러다가 web2py.com/books 에서 requires를 Field 설정부분 말고 따로 아래에서 설정해주는 예시가 있길래 해봤는데 dropdown이 나왔다!!!!


db.define_table([Table 이름],
                     Field([Field이름]))
db.[Table 이름].[Field이름].requires=IS_IN_SET([넣고 싶은 목록])

이렇게 하니깐 맨위 이미지처럼 나오더라..감격!
web2py는 언제나 한국어 자료가 너무 없다...내가 겪는 이 문제들은 다른 한국인은 겪지 않기를...

댓글 없음:

댓글 쓰기