LoginSignup
0
0

More than 3 years have passed since last update.

kanban制作 ruby on rails

Posted at

各ページで共通するようなヘッダーやフッターはpertialの中に記述する

<%= render 'partial/header' %>

/views/partial/_header.html.erb のようにpartialの先頭にはアンダースコアをつける。

devise使用時 deviseをユーザモデルに紐づける場合は 'rails g deivse User' とする

そうすると、route.rbに自動的にdevise用のルーティングが設定されます。

deviseを作成した時点で、viewファイルは作られているが見えていない。編集するために `rails g devise views' をする必要あり

 deviseを導入することによって使える メソッドが存在する

current_user(現在ログインしているユーザ) など
authenticate_user!などのヘルパーメソッドも含む

strong parameterを理解したい

 before_action :authenticate_user!
  before_action :configure_permitted_parameters, if: :devise_controller?

  protected

    def configure_permitted_parameters
      devise_parameter_sanitizer.permit(:sign_up, keys: [:name])
      devise_parameter_sanitizer.permit(:account_update, keys: [:name])
    end

localの言語設定を変更したい時はja.ymlを作成して該当の箇所に追記。

resourcesの記法

resources :list, only: %i(new create)

ストロングパラメータ

params.require(:list).permit(:title).merge(user: current_user)

link_to記法

link_to(content_tag(:i, '', class: 'fas fa-pen'), edit_list_path(list))

deleteメソッド と destroyメソッドの違いについて

deleteメソッドは指定した条件に合致するレコードを一件削除する。
destroyメソッドはモデルを通して指定した条件に合致するレコードとそれに関わるレコードも削除する。
関連付けさせたモデルにdependent: :destroyを指定していれば、関連付けされたモデルも削除される。

外部キーとは

ルーティングをネストする

この時の @valid? の使い方が分からない

def create
    @card = Card.new(card_params)
    if @card.save
      redirect_to :root
    else
      @card.valid?
      render action: :new
    end
  end

select文とは?

 <%= select :card, :list_id, @lists.map{ |l| [l.title, l.id] }, {}, { class: 'form-control' } %>

form_with について

form_withの使い方リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0