.save

セーブがしたいんです…

2016-12-01から1ヶ月間の記事一覧

RSpec 外部キーを使っているモデルをテストする際の手順(factory_girl使用)

やり方まとめ ・外部キーを使っている場合、外部キーの先のレコードが存在しないと、テストで弾かれる。だから必要なレコードを定義する。 具体的に messageテーブルに外部キーでuserとgroupを設定しているとする。 「messageが投稿できるかどうか」というテ…

Rspec コードメモ

・通常の書き方(factory-girlなし) user_spec.rb require 'rails_helper' describe User do describe '#create' do it "is invalid without a email" do #ここはテストの条件式。今回の条件はemailがないと無効になるか user = User.new(nickname: "abe", …

rspec エラーまとめ

・エラー文 Web Console is activated in the test environment, which is usually a mistake. To ensure it's only activated in development mode, move it to the development group of your Gemfile: gem 'web-console', group: :development If you sti…

レビュー反省 2016 12 20

・permitでuser_id、group_idを許すのか、mergeでuser_id、group_idを加えるのかどちらかにしましょう。 params.require(:message).permit(:message, :user_id, :group_id).merge(user_id: current_user.id, group_id: params[:group_id]) ・elseの後、改行…

レビューの反省 2016 12 19

・@groupだとgroupのインスタンスが入っている様に見えてしまうので変数名を変えましょう def create @message = Message.new(create_params) #入力された値を保存する @group = params[:group_id] #リダイレクトをするために、現在のページのgroup_idを取得…

rails ルーティングをネストさせる方法

・やり方 resources :親 do resources :子end 参考 railsguides.jp

レビュー反省 2016 12 18

・シンボル型での記述をメインで使うこと render 'edit' より、render :editなどの方が見やすい。 ・hamlでは式展開ではなく、rubyタグを使う。 %p #{current_user.name}ではなく、%p= current_user.nameで書く。 ・レビューを受けた際は同じような記述が他…

rails 部分テンプレートの使い方 まとめ

1、部分テンプレートの作り方 _ファイル名.html.haml(or erb) これを使いたいコントローラーが管理するviewフォルダにいれる。 2、部分テンプレートの呼び出し方 = render partial: "1で作った「ファイル名」の部分" 部分テンプレートの内容を繰り返し表…

チャットアプリケーション制作記録1 動作考察

class GroupsController < ApplicationController before_action :set_group, only:[:show, :edit, :update] def index @groups = current_user.groups end def new @group = Group.new end def create @group = Group.new(group_params) if @group.save red…

レビュー反省 2016年12月16日

・デバック用のツールはdevelopment, test環境だけにしましょう。 デバック用のgem gem 'pry-rails' # rails console(もしくは、rails c)でirbの代わりにpryを使われるgem 'pry-doc' # methodを表示gem 'pry-byebug' # デバッグを実施(Ruby 2.0以降で動作す…

テーブルから不要なカラムを削除する

ターミナルにて $ rails g migration Removeカラム名From削除元テーブル名 削除するカラム名

ページに表示したい情報をshowアクションに定義する

ページに表示したい情報をshowアクションに定義する やりたいこと 1、ログインしているユーザーのnicknameを表示する 2、ログインしているユーザーの投稿を表示する アソシエーションなしvar class UsersController < ApplicationController def show @nic…

renderでページを再表示させた時にフラッシュメッセージを出す方法

def create @group = Group.create(group_params) if @group.save redirect_to root_path, notice: 'グループが作成されました' else flash.now[:alert] = "グループ名を入力してください" render :action => :new end end flash.now[:]で表示するメッセージ…

レビューの反省 2016年12月6日

・不要なファイルはコミットしないようにしましょう! また、プルリクはなんのためにその機能を作ろうとしているのか、を明確にしてください。 例)group機能を作りたい! =>Groupの作成機能を作った。 今のようにgroupのmodelとcontrollerを作っただけより…

deviseのフラッシュメッセージの日本語化

qiita.com これをやった後にサーバーを再起動させること!

rails5 deviseでのサインアップ等の処理の後にフラッシュメッセージを表示する

application.html.haml !!! %html %head %meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/ %title ChatSpaceV3 = csrf_meta_tags = stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' =…

deviseでuser_nameを登録、更新するやり方

application_controller.erb class ApplicationController < ActionController::Base before_action :configure_permitted_parameters, if: :devise_controller? protect_from_forgery with: :exception private def configure_permitted_parameters devise_…

レビューの反省 2016年12月5日

・仮として作った部分も消しておきましょう!プルリクエストは、本番環境の機能を想定して作っていくものです。本番の環境で使わない部分の実装をプルリクエストで出すことはよくありません。なので、ご自身で試されたり、仮のものとして書いたコードは全て…

レビューの反省 2016年12月1日

・もらったコメントに関しては全てに返信を書くことで、もれなく修正できる ・CSSの色コードを直に書き込んでいては、どんな色なのか分かりづらい。また、再利用する際もやりづらいので、使用回数に限らず変数にしてしまった方がいい。 ・CSSのコードにて16…