2010년 4월 16일 금요일

루비 온 레인즈 중 scaffold 사용시...


도대체 이놈이 뭐하는 녀석인가..

scaffold !!

웹프로그래밍을 일반적으로(또는 무식하게 ^^;;) 표현하자면.... 데이터(글, 파일등)를 등록하고 이를 데이터베이스에 저장하는 것으로 본다고 하자..

그렇다고 했을때....

저너마가 하는 일은...

그냥 데이터베이스 생김새만 정해주면... 쫘악~ 관련 기능이 한방에 나오도록 만들어 놓은것으로 보면된다.

말이 필요없다. 해보자..


$ ruby script/generate scaffold Movie title:string description:text one_sheet_url:string

위 명령대로 치면, Movie라는 app가 생기고 그 밑에 title, desc... 등을 column으로 가지고 이를 핸들링 할 수 있는 페이지가 쭉 뜬다.

만일.. 아래처럼 뒤에 암껏도 안써준 경우에는 어떻할까?
$ ruby script/generate scaffold Movie

에러는 없으나 어떤 것들을 입력받아야 할지 모르므로 입력할 수 있는 공간이 없다.
이왕이면 위위가 더 편하지 아니한가.. 물론 이렇게 시작해서 db/migrate/xxxxx.db 파일 수정해가면서 일일이 할수도 있다. 맨땅에 헤딩하겠다는데 말릴수야 없지..

어쨌든..

아래 링크는 꼭 한번 읽어보길. 선배들이 고생한 기록은 헛된것이 아니더라능...
http://winchild.egloos.com/6778585

@링크 거는것도 일일이 허락 받아야 하는건 아니겠지..


추가...

근데 db의 내용을 바꾸면 어떻게 되나???

% ruby script/generate migration addprice

하고 난 다음에 db/migrate/xxxx_addprice.rb 파일을 수정하고...

%rake db:migration 을 하면...

데이터베이스내에 반영은 된다..

문제는 scaffold에서 자동으로 제공한 코드들이 동작안한다.

왜냐? db는 업뎃되었으나 scaffold 관련 코드는 업뎃 안되었으니까?

그래서 방법은?

아직 없다. 찾고 있다. 현재로서는 아직 손댄게 없으므로 아래처럼 삭 날렸다(전혀 해결책 아님)

%ruby script/destroy scaffold Movie

웹질을 해보니 딴 넘들도 많이 고생하고 있다...
루비....이거 잘 되면 편한거긴 한데..
과대포장된 감이 없지않다..


아직 안정화가 안된 모양이다.



댓글 없음:

댓글 쓰기