일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 총판
- 화훼이
- 구글 플레이
- 플로팅 배너
- 데이터 센터
- 저품질
- 폐쇄형 SNS
- 안드로이드
- 1위 기업
- 구글 이권다툼
- 샤오미
- 영상 만들기
- 크라우드 펀딩
- MI5
- 후기영상
- 예제
- jQuery
- 정보 소유권
- 트위터
- P9
- 해저 데이터서버
- 수익성
- 인스타그램
- 안드로이드의 파편화
- 갤럭시 S7
- Stagefright
- Math.random
- 네이버 포스트
- .animate
- 클릭몬
Archives
- Today
- Total
IT & CODE 이야기
rails에서 scaffold로 웹사이트 만들기 본문
우선 스케폴딩으로 CRUD 게시판을 구현합니다
rails g scaffold post title:string content:text user_id:integer
여기서 user_id 값은 devise와 연결하기 위한 것입니다.
gem 'devise'
gem 'cancancan'
gem 'rails_db'
gem 'better_errors'
Devise
rails generate devise:install
rails generate devise user
rake db:migrate
위에 두줄에서 기본 설정을 하고 다시 DB를 migrate합니다
로그인이 안되어 있으면 로그인 하는 페이지로 가도록 하기 위해
post_controller.rb
class PostsController < ApplicationController
before_action :set_post, only: [:show, :edit, :update, :destroy]
before_action :authenticate_user!
...
before_action :authenticate_user!라는 명령을 추가합니다.
1:N 관계 연결
post.rb
belongs_to :user
user.rb
has_many :posts
posts_controller.rb
...중략...
def post_params
params[:post][:user_id] = current_user.id
params.require(:post).permit(:title, :content, :user_id)
end
post_params 메소드에 params[:user_id] = current_user.id를 추가해줍니다
그리고 view/posts/_form.html.erb
<div class="field">
<%= f.label :user_id %>
<%= f.number_field :user_id %>
</div>
요 부분을 지워줍니다! 그러면 article_id 값이 추가됩니다.
'CODE > Ruby on rails' 카테고리의 다른 글
rbenv로 연결한 ruby를 sudo 명령에도 사용하는 방법 (0) | 2019.06.05 |
---|
Comments