본문으로 바로가기

[ROR] CRUD 게시판 만들기 - Create Read

category Dev/Ruby on Rails 2018. 2. 4. 15:59

Ruby on Rails - CRUD 게시판 만들기 (1)






- CRUD란?


Create Read Update Delete 

글을 '생성/읽기/수정/삭제' 할 수 있는 게시판을 구성하는 기능을 말합니다


- MVC 패턴이란?


Model : 정보를 저장하는 곳

View : 사용자에게 보여주는 곳

Controller : 제공자가 조작하는 곳





- rails project 시작하기


$ rails new p_crud

: 프로젝트 폴더를 생성합니다



생성한 뒤 controller를 생성하는 코드인

$ rails g controller home [index] [new] [create] 

을 입력해줍니다




그럼 이런식으로 controllers 와 views 폴더에 파일이 생성됩니다




Controller 에 액션을 정의했다면 반드시 routes 에 라우팅을 해줘야합니다!




- Create


CRUD 에서 가장 먼저 글을 작성하는 것을 구현해보도록 하겠습니다




새글 쓰기를 누르면 new 로 이동하게 됩니다




form 태그를 이렇게x2 잘 작성해주시고..




제목과 내용을 입력한 뒤 post 방식으로 create 로 전송을 해보도록 해보겠.... (?)




잉? ActionController::InvalldAuthenticityToken 이라는 오류가 나왔습니다...ㅠㅠ

이럴땐 당황하지말고...!




<%= hidden_field_tag :authenticity_token, form_authenticity_token %>

코드를 추가합니다



이제는 작성된 값을 model 에 저장을 할 수 있도록 해야합니다


$ rails g model post

: post 모델을 생성합니다.




모델을 생성하면

post.rb

migrate 파일이 생성됩니다.


여기서!

migrate파일은 db의 모양을 잡는 역할입니다.

그리고 그 모양을 확정 짓는 코드는

$ rake db:migrate

입니다.




이렇게 db 모양을 구성하고...



모양을 쿵! 확정지어 줍니다.




Controller 에서 create 를 정의해주면 이제 Create 가 정상적으로 구현이 됩니다 !



- Read



작성한 글을 출력할 수 있도록 @posts 변수에 모든 Post 모델의 내용을 넣습니다




@posts 변수를 each do 반복문으로 모든 값을 출력합니다




Create 와 Read 가 정상적으로 잘 구현이 됐습니다 !



이렇게 CRUD 에서 Create Read 를 구현해봤습니다

이제 다음에는 나머지 Update Delete 를 진행해보겠습니다~