tags別の記事

Railsチュートリアル

らくだ🐫にもできるRailsチュートリアル|14.3

14.3 ステータスフィードステータスフィードを実装する!→フォローされているユーザーのマイクロポストとログイン中のユーザーのマイクロポストを合わせて表示する見本はこちら→RoRT本文参照14.3.1 動機と計画現在のユーザーによってフォローされているユーザーに対応するユーザーidを持つマイクロポストを取り出し、同時に現在のユーザー自身のマイクロポスト...

らくだ🐫にもできるRailsチュートリアル|14.2

14.2 [Follow] のWebインターフェイスフォロー/フォロー解除の基本的なインターフェイスを実装しフォローしているユーザーとフォロワーにそれぞれ表示用のページを作成する!14.2.1 フォローのサンプルデータrails db:seedを使ってDBにサンプルデータを登録する先にサンプルデータを自動作成できるようにしておくことによりWEBページの...

らくだ🐫にもできるRailsチュートリアル|14.1

14章では他のユーザーをフォロー及びフォロー解除できる仕組みとフォローしているユーザーの投稿をステータスフィールドに表示する機能を追加していく。 ユーザー間の関係をどうモデリングするか学ぶ モデリングに対応するWebインターフェイスを実装 ステータスフィールドの完成版を実装という流れ。チュートリアルの中で最も難易度が高い手法をいくつか使っているとの事で...

らくだ🐫にもできるRailsチュートリアル|13.4(と13.5)

※毎回書いたほうがいい気がするので書いておきます※平文の部分をちょこちょこI18nで日本語化しているのですがその部分に関しては特に記述していなくてもたまにコードが違ったりしています。t(‘.hogehoge’)って部分ですどうぞお気になさらず。13.4 マイクロポストの画像投稿マイクロポストの基本的な操作は実装できたが応用として画像付きのマイクロポスト...

らくだ🐫にもできるRailsチュートリアル|13.3

※毎回書いたほうがいい気がするので書いておきます※平文の部分をちょこちょこI18nで日本語化しているのですがその部分に関しては特に記述していなくてもたまにコードが違ったりしています。t(‘.hogehoge’)って部分ですどうぞお気になさらず。13.3 マイクロポストを操作するモデリングとテンプレートが完成したのでweb経由でマイクロポストを操作できる...

らくだ🐫にもできるRailsチュートリアル|13.2

13.2 マイクロポストを表示するマイクロポストの表示予定図はこんな感じRoRT本文参照ですここでは、Twitterのような独立したマイクロポストのindexページは作らずに、図 13.4のモックアップに示したように、ユーザーのshowページで直接マイクロポストを表示させることにします。ユーザープロフィールにマイクロポストを表示させるため、最初に極めて...

らくだ🐫にもできるRailsチュートリアル|13.1

ユーザーが短いメッセージを投稿できる機能を作っていく→「マイクロポストリソース」を追加していくMicropostデータモデルを作成し、Userモデルとhas_manyおよびbelongs_toメソッドを使って関連付けを行い、さらに、結果を処理し表示するために必要なフォームとその部品を作成します (13.4で画像のアップロードも実装します)。因みに(?)...

らくだ🐫にもできるRailsチュートリアル|12.4 (と12.5と12.6)

12.4 本番環境でのメール送信 (再掲)本番環境のセットアップは11章で終わってるのでマージしてデプロイ随時コミットはしているのでテストしてgit statusしてコミット忘れないかチェックしてブランチのままpushしてGitHubでプルリクしてマージして戻ってプルするいつもの流れHerokuへデプロイ$ rails test$ git push$ ...

らくだ🐫にもできるRailsチュートリアル|12.3

※毎回書いたほうがいい気がするので書いておきます※平文の部分をちょこちょこI18nで日本語化しているのですがその部分に関しては特に記述していなくてもたまにコードが違ったりしています。t(‘.hogehoge’)って部分ですどうぞお気になさらず。12.3 パスワードを再設定するpasswordResetsコントローラのeditアクションを実装していくテス...

らくだ🐫にもできるRailsチュートリアル|12.2

※毎回書いたほうがいい気がするので書いておきます※平文の部分をI18nでちょこちょこ日本語化しているのですがその部分に関しては特に記述していなくてもたまにコードが違ったりしています。t(‘.hogehoge’)って部分ですどうぞお気になさらず。12.2 パスワード再設定のメール送信パスワードの再設定に関するメールの部分を作っていく11章でUserメイラ...

らくだ🐫にもできるRailsチュートリアル|12.1

12章でやることパスワードを忘れた時に再設定できるようにする仕組みを作る見本は本文参照の事11章ですでにパスワード再設定用のメーラーが生成されているので、そこにリソースとデータモデルを追加してパスワードの再設定を実装していく。全体の流れはこちら ユーザーがパスワードの再設定をリクエストすると、ユーザーが送信したメールアドレスをキーにしてデータベースから...

らくだ🐫にもできるRailsチュートリアル|11.4(と11.5)

11.4 本番環境でのメール送信開発環境でのアカウント有効化の流れが整ったので、本番環境でも実際にメールを送信できるようにする。開発環境では日本語が混ざるとメールが文字化けしてたけど、本番環境では行けるらしいので期待してる!SendGridSendGridというHerokuのアドオンを利用してアカウント検証をする本番環境からメール送信するために、「Se...

らくだ🐫にもできるRailsチュートリアル|11.3

11.3 アカウントを有効化するメールが生成できるようになったのでAccountActivationsコントローラのeditアクションを書いていく。テストも書いて、しっかりテストできていたらUserモデルにコードを移していく (リファクタリング)authenticated?メソッドの抽象化有効化トークンとメールはそれぞれparams[:id]とpara...

らくだ🐫にもできるRailsチュートリアル|11.2

11.2 アカウント有効化のメール送信準備ができたので、アカウント有効化メールに必要なコードを追加していくこのメソッドではAction Mailerライブラリを使ってUserのメイラーを追加します。このメイラーはUsersコントローラのcreateアクションで有効化リンクをメール送信するために使います。Action MailerライブラリとなはんぞRa...

らくだ🐫にもできるRailsチュートリアル|11.1

11章でやることアカウントを有効化するためのメール認証システムを作る! ユーザーの初期状態は「有効化されていない」(unactivated) にしておく。 ユーザー登録が行われたときに、有効化トークンと、それに対応する有効化ダイジェストを生成する。 有効化ダイジェストはデータベースに保存しておき、有効化トークンはメールアドレスと一緒に、ユーザーに送信す...

らくだ🐫にもできるRailsチュートリアル|10.4(と10.5)

10.4 ユーザーを削除するRESTに準拠した正統なアプリケーションとなる為に、最後の一つ、destroy機能を実装していく!削除権限を持つ管理 (admin)ユーザーのクラスを作成し→ユーザーを削除するためのリンクを追加し→destroyアクションを実装する見本はこちら→RoRT本文10.4.1 管理ユーザー論理値をとるadmin属性をUserモデル...

らくだ🐫にもできるRailsチュートリアル|10.2

10.2 認可ウェブアプリケーションの文脈では、認証 (authentication) はサイトのユーザーを識別することであり、認可 (authorization) はそのユーザーが実行可能な操作を管理することです。現状ではログインしていないユーザーでもどのユーザー情報でも編集できてしまうためユーザーにログインを要求し、自分以外のユーザー情報を変更でき...

らくだ🐫にもできるRailsチュートリアル|10.1

10章でやることユーザーの更新・表示・削除→未実装のedit、update、index、destroyアクションを加えてRESTアクションを完成させる ユーザーが自身でプロフィールを更新できるようにする ログイン済の場合ユーザー一覧を表示できるようにする 管理ユーザーを作成し、管理ユーザーのみユーザーを削除できるようにする10.1 ユーザーを更新するユ...

らくだ🐫にもできるRailsチュートリアル|9.3(と9.4)

9.3 [Remember me] のテスト動作をテストで確認できるようにしておくことが重要です!!→ユーザーを永続化するコードのメイン部分は未だ全くテストされていないのであった9.3.1 [Remember me] ボックスをテストするlog_in_asヘルパーメソッドを定義ユーザーが記憶されるためにはログインが必要なのでテスト内でユーザーがログイン...

らくだ🐫にもできるRailsチュートリアル|9.2

[Remember me] チェックボックス[remember me] チェックボックスでログインの保持を選択できるようにする見本はRoRT本文チェックボックスを追加するチェックボックスはヘルパーメソッドを使って作成できるただし、下記のようにラベルの内側に配置する必要がある!<%= f.label :remember_me, class: "ch...

らくだ🐫にもできるRailsチュートリアル|9.1

9章でやる事(任意で)ユーザーのログイン情報を記憶しておけるようにする→remember me機能永続cookieを使ってremember me機能を実現9.1 Remember me 機能ブラウザを閉じた後でもログイン状態を有効にする[remember me] 機能を実装していくこの機能を使うと、ユーザーが明示的にログアウトを実行しない限り、ログイン...

らくだ🐫にもできるRailsチュートリアル|8.3(と8.4)

8.3 ログアウトログインが出来たらログアウトも出来たい!!セッションを破棄するdestroyアクションも、引き続き同じ要領で作成することにします。ただし、ログインの場合 (リスト 8.15とリスト 8.25) と異なり、ログアウト処理は1か所で行えるので、destroyアクションに直接ログアウト処理を書くことにします。ログインの場合と異なり~→登録済...

らくだ🐫にもできるRailsチュートリアル|8.2

8.2 ログイン有効な値の送信があった場合にログインできるようにする!→cookieを使った一時セッションでログイン→ブラウザを閉じると自動的に期限切れになるようにするセッションを実装するには、様々なコントローラやビューでおびただしい数のメソッドを定義する必要があります。(中略)Sessionsコントローラ (8.1.1) を生成した時点で既にセッショ...

らくだ🐫にもできるRailsチュートリアル|8.1

8章でやる事→ユーザーがログインやログアウトを出来る様にするここでいうログインの基本的な仕組みとは、ブラウザがログインしている状態を保持し、ユーザーによってブラウザが閉じられたら状態を破棄するといった仕組み (認証システム (Authentification System))です。この認証システムの基盤が出来上がったら、ログイン済みのユーザー (cur...

らくだ🐫にもできるRailsチュートリアル|7.5(と7.6)

7.5 プロのデプロイ実際に動かせるアプリのデプロイ!準備として現時点までをmasterブランチにマージしておく7.5.1 本番環境でのSSL本章で開発したユーザー登録フォームで送信すると、名前やメールアドレス、パスワードといったデータがネットワーク越しに流されていきます。実は、このようなネットワークに流れるデータは途中で捕捉できるため、扱いには注意が...

らくだ🐫にもできるRailsチュートリアル|7.4

7.4 ユーザー登録成功新規ユーザーのデータが有効な場合、データベースに保存できるようにする7.4.1 登録フォームの完成users_controller.rbにコードを追加↓createアクションに対応するテンプレートを作るのではなく新しく作成されたユーザーの詳細画面にリダイレクトするように設定 def create @user = User...

らくだ🐫にもできるRailsチュートリアル|7.3

7.3 ユーザー登録失敗無効なデータ送信を受け付けた際にエラー一覧が表示されるようにする7.3.1 正しいフォーム特に、/usersへのPOSTリクエストはcreateアクションに送られます。私たちはここで、createアクションでフォーム送信を受け取り、User.newを使って新しいユーザーオブジェクトを作成し、ユーザーを保存 (または保存に失敗) ...

らくだ🐫にもできるRailsチュートリアル|7.2

7.2 ユーザー登録フォームユーザー登録フォームを作成していく見本はRailsチュートリアル本文参照7.2.1 form_forを使用するユーザー登録ページで重要な点は、ユーザー登録に欠かせない情報を入力するためのformです。Railsでform_forヘルパーメソッドを使います。このメソッドはActive Recordのオブジェクトを取り込み、その...

らくだ🐫にもできるRailsチュートリアル|7.1

7章でやる事ユーザー登録機能を追加する→HTML フォームを使ってWebアプリケーションに登録情報を送信→ユーザーを新規作成して情報をデータベースに保存→作成されたユーザーの新しいプロフィールを表示できるようにする準備7.1 ユーザーを表示するユーザーの名前とプロフィール写真を表示する為のページを作る。Railsチュートリアル本文に見本がありますブラン...

らくだ🐫にもできるRailsチュートリアル|番外編・パスワードのバリデーション

番外編では本編からちょっと外れた話なんかを書いていきますパスワードのバリデーションをアレンジするチュートリアル本編でUserモデルのバリデーションの話が出てきましたせっかく(?)なので、パスワードのバリデーションをアレンジしていこうと思います本文では「最小6文字」だけだったけど「最大13文字」→「英・数・記号を各1文字以上」→「英大文字・英小文字・数・...

らくだ🐫にもできるRailsチュートリアル|6.3(と6.4)

6.3 セキュアなパスワードを追加するセキュアなパスワード!超大切!!パスワードをそのままの形ではなく、ハッシュ化してDBに保存するユーザーの認証は、パスワードの送信、ハッシュ化、データベース内のハッシュ化された値との比較、という手順で進んでいきます。比較の結果が一致すれば、送信されたパスワードは正しいと認識され、そのユーザーは認証されます。ここで、生...

らくだ🐫にもできるRailsチュートリアル|6.2

6.2 ユーザーを検証するValidation(検証)機能を実装する6.2.1 有効性を検証するrequire 'test_helper'class UserTest < ActiveSupport::TestCase def setup #各テストが実行される直前で実行される @user = User.new(name: "Exa...

らくだ🐫にもできるRailsチュートリアル|6.1

6章でやる事ユーザー用のデータモデルの作成と、データを保存する手段の確保→ユーザー登録を出来る様にする6.1 UserモデルRailsでは、データモデルとして扱うデフォルトのデータ構造のことをモデル (Model) と呼びます (1.3.3で言うMVCのMのことです)railsの標準のデータ構造→modelこんな雰囲気でいいのかな?railsではデータ...

らくだ🐫にもできるRailsチュートリアル|5.4(と5.5)

5.4 ユーザー登録: 最初のステップユーザー登録ページを作っていく5.4.1 Usersコントローラ新規ユーザー用の登録ページを作る→Usersコントローラを作成→newアクションを引数にしてgenerateを実行(2.1でやったRESTアーキテクチャの規約に合わせる)スタブとはなんぞスタブ→使い残し、半券、切り株などの意味未完成の機能の代用になるも...

らくだ🐫にもできるRailsチュートリアル|5.3

5.3 レイアウトのリンク’#’でダミーリンクにしていた部分を書き換えていく。Aboutの様に直接パスを指定するのではなくRailsの慣習に倣った形式で記述していく→<%= link_to “About”, about_path %>埋め込みRuby Link_toヘルパー 表示される文字(第一引数),リンクのパス(第2引数)about_p...

らくだ🐫にもできるRailsチュートリアル|5.2

5.2 Sassとアセットパイプライン5.2.1 アセットパイプラインアセットパイプラインとは、JavaScriptやCSSのアセットを最小化 (スペースや改行を詰めるなど=minify) または圧縮して連結するものアセットパイプラインを理解するための3つの主要な機能を理解する↓そもそもアセット(asset)とは何ぞJavaScript・CSS・画像フ...

らくだ🐫にもできるRailsチュートリアル|5.1

5章でやる事BootstrapSass静的ページをレイアウトに追加ログイン機能のはじめの一歩HTML/CSSについては分かってる部分はあまり深堀しない感じで5.1 構造を追加するサイトロゴ、ナビゲーションヘッダー、サイトフッターを含む静的ページを開発していくモックアップ(=ワイヤーフレーム)を参照しながらviewを整えていく作業ブランチの作成 →$ g...

らくだ🐫にもできるRailsチュートリアル|4.4(と4.5)

4.4 Rubyにおけるクラス4.4.1 コンストラクタリテラルコンストラクタとは何ぞリテラル → コードに直接書かれた文字や数字コンストラクタ → インスタンスを作成した時に自動的に実行されるメソッドうーん。これは雰囲気でふわっと掴んでれば良さそう感?(?>> s = "foobar"  #""は文字列(Stringクラス)のオブジェクト...

らくだ🐫にもできるRailsチュートリアル|4.3

4.3 他のデータ構造4.3.1 配列と範囲演算子配列とは何ぞ配列 (array) は、特定の順序を持つ要素のリストです。sqlitメソッドで文字列を自然に配列へと変換できる>> "foo bar baz".split  #空白部分で区切られて配列に分割される=> ["foo", "bar", "baz"] ...

らくだ🐫にもできるRailsチュートリアル|4.2

4.2 文字列とメソッドirbの設定$ nano ~/.irbrcエディタが開くので本文のコードをコピペCtrl-X → Y → Enterコンソールを起動する(rails-flavored-ruby) $ rails consoleRunning via Spring preloader in process 4544Loading developm...

らくだ🐫にもできるRailsチュートリアル|4.1

Railsで重要なRubyの知識。的な事。あ、せっかく3章でテストを勉強したことですし本文にテスト結果の表示がある場合、合わせて表示させていきます4.1 動機Rubyの知識があった方が理解も深まるし作業効率も上がるのだ。的な事。ブランチを作る(master) $ git checkout -b rails-flavored-rubySwitched t...

らくだ🐫にもできるRailsチュートリアル|(3.5と)3.6

3.5 最後に本文ではmasterブランチにcheckoutしてマージなんですがせっかく(?)なのでプルリクエスト→Pullの流れをセルフでやってみようと思います一人でやってると使い所がない感じなのでプルリクエストの練習として。$ git add -A$ git commit -m "Finish static pages"$ git pushGitH...

らくだ🐫にもできるRailsチュートリアル|3.4

3.4 少しだけ動的なページHome、Help、Aboutそれぞれのページタイトルが表示されるようにしていく準備として元々用意されているレイアウトのファイルを一時的に無効に#ファイルの移動(&リネーム)#app/views/layoutsにあるapplication.html.erbを ルート直下に移動&ファイル名をlayout_fileに$ mv a...

らくだ🐫にもできるRailsチュートリアル|3.3

3.3 テストから始めるテストのタイミングのガイドライン アプリケーションのコードよりも明らかにテストコードの方が短くシンプルになる (=簡単に書ける) のであれば、「先に」書く 動作の仕様がまだ固まりきっていない場合、アプリケーションのコードを先に書き、期待する動作を「後で」書く セキュリティが重要な課題またはセキュリティ周りのエラーが発生した場合、...

らくだ🐫にもできるRailsチュートリアル|3.2

3.6.1 minitest reporters2019.05.24 らくだ🐫にもできるRailsチュートリアル|3.3から移動masterブランチから移動する前にテスト結果を見易くするために3.6.1に書いてあるこちらの設定をしておきます(ブランチを移動しているようでしたらmasterブランチにcheckoutしておいてください)ENV['RAILS...

らくだ🐫にもできるRailsチュートリアル|3.1

とうとうここからが本番!って感じですよね。とは言えまだまだ、本番の入り口。がんばれ🐫3.1 セットアップ先ずはサンプルデータがあるとの事なのでフォークしておくことにしました完成版と言う事なので途中でどのくらい参考になるかはわからないけどもで、Bitbucketでフォークってどうやるのかなって調べてみたんですが英語がわからな過ぎて公式helpから見つけら...

らくだ🐫にもできるRailsチュートリアル|2.2

2.2 UsersリソースWebインターフェイスとはなんぞ一言で言おうとすると逆によくわからなくなる感じなのですが、webから操作するための仕組み的な?railsで言うとviewとかcontrollerあたりがそれにあたるのかな。と思っています。リソースとはそれぞれのデータを作ったり・呼び出したり・更新したり・削除したりできるようにした一塊の仕組みUs...

らくだ🐫にもできるRailsチュートリアル|2.1

scaffoldジェネレータとは何ぞ?ざっくり言うと基本的な機能を自動生成してくれるスクリプトRESTアーキテクチャとは何ぞ?[blogcard url=”https://ja.wikipedia.org/wiki/Representational_State_Transfer”]分かるようなわからない様な?一先ず進めていきます。2.1 アプリケーショ...

らくだ🐫にもできるRailsチュートリアル|1.5(と1.6)

1.5 デプロイする1.5.1 Herokuのセットアップ環境によって導入するgem、しないgemを指定する本番環境のみにインストールgroup :production do gem 'pg', '0.20.0'end開発・テスト環境にインストール(開発環境には導入されないようにする)group :development, :test do gem...

らくだ🐫にもできるRailsチュートリアル|1.4

1.4 Gitによるバージョン管理gitに関してはProgateのGit学習コースをやっていたのだけど実際使ってみると「こんな時どうするの??」とか、そもそもの仕組みがあんまりわかっていなかったりしていたので初心者にもわかりやすいと評判のわかばちゃんと学ぶ git使い方入門で勉強しました。Progateよりもうちょっと踏み込んだ、もうちょっと実践的な内...

らくだ🐫にもできるRailsチュートリアル|1.3

1.3 最初のアプリケーションリスト 1.3: rails newを実行する (バージョン番号を指定)#cloud9の人はディレクトリの移動は特に必要ないと思います$ rails _5.1.6_ new hello_app#rails バージョン指定 new アプリ名そして早速エラーが出ましたが、2週目のらくだ🐫は知っています。後でgemファイルの編集...

らくだ🐫にもできるRailsチュートリアル|1.1と1.2

「手を動かしながら読む」と言った感じで進めたRailsチュートリアルの1週目。学びも沢山あったけど、わからないままの所も沢山残っております。と、言う訳で2週目。今回は細かく調べつつ、記録しつつ、あとで見直したいときにサクっと情報を取り出せるように纏めたいなって思っています。「ド」が付く素人のらくだ🐫が勉強するRailsチュートリアルの学習記録です。自分...

Rails|Railsチュートリアル11~14.3|一先ず完走と言うか読了?

続きと言うか前回からの続きと言うかブログを書くのに間が開いちゃったら記憶がはるか彼方に……🐫💧その都度書かないとダメですね。あとで詰まった時とかの参考になるし。参考サイトとかもブクマより見つけやすいよね。と、言う訳で(?2週目をやる時にはいろいろ細かく記録を付けていきたいと思うらくだ🐫ですRails チュートリアル1周目の感想一周終わった!と言うよりは...

Rails|Railsチュートリアル10.1.1~10.5.1|10.2.3で詰まる

流されるまま進む前回からの続きその後、大きくハマることもなくかと言ってしっかり理解しながら進めいてる訳でもなく←テスト部分に至ってはほぼググッテコピペなんだけどもどうにかココまでやってきました。そして久々にドハマリましたんテストがGREENにならない10.2.3それは10.2.3を進めていた時の事です下の方のリスト10.23の部分ですcreat...

Rails|Railsチュートリアル2.1.1~2.4.1|2.1と2.2で詰まる 追記アリ(20190228)

分からないことが沢山前回からの続きProgateさんの様に1から10まで説明してくれる訳でもないし説明が硬めの文章なので理解と言うか頭に入ってくるのに時間がかかりますねまぁしっかり頭を使いたまえよ🐫と言う事で頑張りたい詰まった所など2.1|Herokuにプッシュ出来ないgemのインストールもストレートに行かなくてでもココはまぁ、前回同様先にupdate...

Rails|Railsチュートリアル1.5.1~1.6.1|1.5.1と1.5.3で詰まる

所で全く関係ないんですがフォーム内が真っ白になって使えずにいたWordPressのビジュアルリッチエディターが使えるようになっていました。ありがたや。さて、前回のからの続きです。今回詰まった所など1.5.1|Herokにログインできないターミナルに「>heroku login」と入力するとURLが出てきてクリックするとブラウザが開いてログインの動...

Rails|Railsチュートリアル1.1.1~1.4.4|1.3.1と1.4.3で詰まる

Railstutorial始めました難しい難しいと聞くRailsチュートリアルを始めることにしましたこれはアレですねProgateやってなかったら完全に訳が分からなかったと思う因みにPCローカルではなく、憧れの(?)cloud9でやっていこうと思います今回詰まった所などAmazon Web Servicesの新規登録これは詰まったっていう程じゃないんだ...