Rails

ActionCableの使い方

参考サイト Rails5.2が出たし、このタイミングでActionCableを使う - ひよっこエンジニアの雑多な日記 Action Cableでリアルタイムチャットアプリの作成方法 (Rails 5.1.4にて)(その1) herokuで動かす! - Qiita 久しぶりに授業とインターン以外で勉強…

enumerizeの使い方。

<参考> RailsでEnumerizeの使い方 | Gemの紹介 | DoRuby 1.(Gemfile)の使い方 gem 'enumerize' $ bundle install 2.モデルの編集 class User < ActiveRecord::Base extend Enumerize enumerize :sex, in: [:male, :female] #配列 enumerize :role, in: {:u…

ransackの使い方

<参考> Basic Search Using Ransack - RichOnRails.com 1.新規プロジェクト生成 $ rails new ransack_sample_app $ cd ransack_sample_app 2.(Gemfile)に追加 gem 'ransack' $ bundle install 3.モデルをgenerate $ rails g model Product name $ rails db…

CarrierWaveを試してみる。

参考 https://y-hilite.com/3150/ CarrierWaveの使い方【Gem】 1.新規プロジェクト生成 $ rails new carrierwave_sample_app $ cd carrierwave_sample_app 2.(Gemfile)に追加 gem 'carrierwave' $ bundle install 3.generate $ rails g scaffold user name:s…

Webpackerの使い方

【Rails入門】Webpackerではじめるフロントエンド開発!Rails5.1対応 | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイト Webpacker 3ではじめるRailsエンジニアのためのモダンフロントエンド入門 〜Sprocketsを使わないRailsプロジェクト試…

CanCanCanの使い方

How to use CanCan / CanCanCan 上記を参考。 CanCanCan とは? ユーザーごとに操作を制御したい時に(管理者であるかどうかなど)、 コントローラーだったり、ビューだったり別々のところで処理を行ってしまうことを防ぎたい。 Abilityクラスを用いて処理す…

.erb を .hamlに変換したい!

Rails の ERB を Haml に変換する まんまこれなんだけどメモ Gemfileに追加 gem 'erb2haml'gem 'haml-rails' ターミナルで下記のコマンド bundle exec rake haml:replace_erbs

deviseの使い方

[*Rails*] deviseの使い方(rails5版) deviseと一緒にomniauthについても触れてくれていて、わかりやすい。 現在はTwitterAPIが少し厳しくなったため、 Twitter利用のところで申請、その後返信を待たなければいけない。 それ以外は非常にわかりやすかった。…

simple_formの使い方

Railsのform_for内のコードをすっきりさせるsimple_formの使い方 - Rails Webook 上記を参考にsimple_formの使い方を学んだ。 <before> <%= form_for(@product) do |f| %> <% if @product.errors.any? %> <div id="error_explanation"> <h2><%= pluralize(@product.errors.count, "error") %> prohibi</h2></div></before>…

Railsのセットアップの時の落とし穴

MacBookPro2018を購入したから もう一度最初から環境構築してたら沼った話 $ rails -v Rails is not currently installed on this system. To get the latest version, simply type: $ sudo gem install rails You can then rerun your "rails" command. $ s…

FeatureSpecをSystemSpecに書き換えてみる!

参考:rspec-rails 3.7の新機能!System Specを使ってみた SystemSpecって何?? ・RSpecの結合テスト(FeatureSpec)の上位互換 ・rspec-rails3.7で導入された。 ・Rails5.1以上で使用可能 違いとしては 今まで設定して色々都合良くしてた部分がデフォルト…

WindowsでLinuxを動かす

Ubuntu Vagrant + VirtualBox + Ubuntu でRails環境構築 Windows環境にVagrant+Ubuntuデスクトップ環境をインストール CentOS Windows 10 + VirtualBox + Vagrant + CentOS + Rails で、”Yay! You’re on Rails!”まで 初心者でもかんたん!Ruby on Rails の開…

Puma dev で動かしてたやつがunexpected exit

参考 puma-devを使ってRailsの開発サーバーをhttps対応にする Ruby 2.3.0 → 2.4.1 にした時に Rails が動かなくなった. 解決方法としては (アプリケーション/ユーティリティ/キーチェーンアクセス) 今回で言えばsgtryout.testの証明書を常に信頼するに変更。…

Heroku Addonを利用できるようになる

Ruby on Rails チュートリアル:実例を使って Rails を学ぼう SendGridでメール転送。 %heroku addons:create sendgrid:starter config/environments/production.rb config.action_mailer.raise_delivery_errors = trueconfig.action_mailer.delivery_method…

【Ruby on Rails】GitHubに公開したくない変数や値を隠してpushする方法

【Ruby on Rails】GitHubに公開したくない変数や値を隠してpushする方法 メアドとかパスワードとかコマンドラインから入力でもいいけどこっちのが楽かなぁ。 Gemfile gem 'dotenv-rails' .env ENV['LOGIN_NAME'] ENV['LOGIN_PASSWORD'] gitgnore /.env こう…

結合テストのコードを書けるようになる

使えるRSpec入門・その4「どんなブラウザ操作も自由自在!逆引きCapybara大辞典」 noticeやalertの設定方法の違い Ruby on Rails チュートリアル:実例を使って Rails を学ぼう 結合テスト(フィーチャーテスト)の書き方 以下二つのテストを書いていきます…

コントローラのテストコードを書けるようになる

RSpec コントローラのテストの書き方まとめ RailsのController Spec | 酒と涙とRubyとRailsと Ruby on Rails、RSpecを使ってコントローラのテストを書いてみる - naichi's lab RailsでController Specを書く際に知っておきたいTips Gemfile group :developme…

モデルのテストコードを書けるようになる

はじめてのRSpec - まずテスト書いてからコード書くシンプルなチュートリアル RSpecによるユニットテストの書き方 — recompile.net Ruby on Rails チュートリアル:実例を使って Rails を学ぼう Rails5でRSpec入門 - bagelee(ベーグリー) 【Rails入門】RSp…

メールを送信できるようになる

Railsからメールを送信してみる! メール送信 - 気にすんな - アットウィキ 開発中にいちいちメールが飛ぶのがウザいとお思いのあなたへーletter_opener - リア充爆発日記 Rails の ActionMailer でメール送信処理 Gmail を使って Net::SMTPAuthenticationEr…

基本的なセキュリティトピックに気をつけて設計できるようになる

クロスサイトスクリプティング [Ruby-on-rails] rawとhtml_safeとの対比htmlをエスケープする erb | CODE Q&A [日本語] RailsビューのHTMLエスケープは#link_toなどのヘルパーメソッドで解除されることがある 今までHTMLに普通に <td><%= blog.title %></td> としてい…

応用的な画面やフォームを作成できるようになる~2~

ルーティングにアクションを追加 - Ruby on Rails入門 使用するアクションへのルーティングだけを設定 - Ruby on Rails入門 Comment viewのなかで2つもrenderしたり、 <%= render 'comments/index', { blog: @blog, entry: @entry } %><%= render 'comments…

応用的な画面やフォームを作成できるようになる

Blog 1---* Entry 1---* Comments の形で作っていく。 Rails3でform_forにネストしたresourcesへのURLを指定する Rails - longkey1's blog 【 Rails 】View から Controller に値を受け渡すには - poyopoyo0のブログ Railsの開発効率をあげる - Pryを使ってR…

Modelの初歩

モデルの生成 railsコマンド(rails) - - Railsドキュメント rails g model Entry title:string body:text rails g model Comment body:text status:string entry_id:integer 関連(association) [初心者向け] Railsで関連するデータ(親子関係)を保存する方…

RailsChat message

参考 Ruby on Rails チュートリアル 機能拡張5(メッセージ機能) Messageモデルの生成 rails generate model Message content:text from_id:integer to_id:integer room_id:string $ rails db:migrate モデル同士の関連付け app/models/message.rb app/models…

Heroku

Herokuログイン % heroku login Gemfile group :development, :test do gem 'sqlite3', '1.3.13' 特にこれ注意。 gem 'sqlite3'は普通のところから消さないとダメだよ。 group :production do gem 'pg', '0.20.0'end config/database.yml production: <

LINEみたいな一対一Webアプリ作成 〜2〜

ここからはソースコード関係! ついに機能を実装。 ユーザーのサインイン機能 Filebaseの認証の初期化 scripts/main.jsの FriendlyChat.prototype.initFirebase GoogleによるFirebaseの認証 scripts/main.jsの FrendlyChat.prototype.signIn FrendlyChat.pro…

LINEみたいな一対一Webアプリ作成

参考 FirebaseでWebチャットアプリをデプロイするまで(1時間コース) サンプルコードの取得 GitHubのサンプルをクローン アプリのインポート クローンした中のweb-startディレクトリを使う。 Firebaseプロジェクト作成とアプリ設定 https://console.firebas…

Scaffoldを使わないで〜特定のレコードを指定する機能のアクション実装〜

参考 特定データに関するscaffoldアクションの実装&基礎的なリファクタリング手法 (1/2):開発現場でちゃんと使えるRails 4入門(3) - @IT 今回は前回同様scaffoldの理解! show、edit、update、deleteアクションを個別で自作 ルーティング設定でresource…

Scaffoldを使わないで1からRails

scaffoldの中身を理解するためにMVCコンポーネントと7つのアクションを個別で自作する (1/3):開発現場でちゃんと使えるRails 4入門(2) - @IT 上のリンクを元に勉強を進めていく。 rails _5.1.4_ new sample_app で新しいディレクトリ兼諸々作成。 最初に…

Rails scaffold の中身のお話

ビューのソースコードは「app/views」 <% ... %> <%= ... %> の中身がRubyのコードを用いている部分。 この2個の違いとしてはサーバーを立ち上げてブラウザで見たとき タグ中の戻り値が表示されるかされないか。 コントローラーのソースコードは「app/contro…