kouの技術的メモ

学習した内容の定着やアウトプット用に開設しました

成果物の作成 2作品目 予定管理サービス ざっくり要件定義と構想

オリジナルアプリ2作目です。 独学だと自己管理が大変だったので、自作の予定管理サービスを作りたくなり、作ってみました。 現在の目標 ユーザー登録機能(ツイッターoauth認証) ログイン、ログアウト機能 ログインしたユーザーは自分の一日のスケジュールを…

成果物の作成11 投稿記事に対するコメント機能のAjax化

せっかくなので、投稿に対するコメント機能をAjax化してみました。 まずコントローラ側を作ります。 今までは単にfallback_location: root_pathにより、リダイレクトで再描画していたのですが、 respond_toでAjaxを扱う部分を実装します。 その際、JavaScrip…

成果物の作成10 投稿記事に対するコメント機能の追加

今回はコメント機能を追加していこうと思います。 独自にComentモデルを作り、PostデータとコメントするUserモデルとの関係性も記述しなければならないので、少し難易度が高いです。 どんなモデルを作るか コメントはさほど長い文章で無くても構わないと思う…

成果物の作成9 ユーザ画像登録機能、表示機能の実装

ユーザーページに画像が表示されておらず少し寂しいので、 ユーザー登録画面で画像をアップロードし、プロフィールページや、記事の投稿で表示できるようにします。 carrierwaveを利用し、 画像アップロードは ユーザー画像登録部分の追加 ユーザー新規登録…

成果物の作成8 表示部分の実装の続き

今回は表示部分。 ルートページにてログインユーザーだけでなく、未ログインユーザーでも見れるように改善しました! 表示は投稿時間の降順です。 /blog/app/views/static_pages/home.html.erb <div class="center jumbotron"> <h1>Kohei's blog</h1> <h2> Koheiの記事投稿サービスにようこそ! </h2> </div> <div class="container-fluid"> <% if</div>…

成果物の作成7 投稿とその表示部分の実装

ここからは自作の要素が強くなるので、じっくり作っていきたいと思います。 投稿モデルの作成 投稿部分は、タイトルと本文を収納したオリジナルモデルを作ります user_idを外部キーとし、本文部分は文字数に長文を投稿できるようにtext型にします。 また、タ…

成果物の作成6 登録ユーザー情報の更新、一覧画面、情報の破棄部分の実装

railsチュートリアル10章で今まで良くわからなかった部分があるのですが、 新しいアプリ作成を通して分るようになりました。 ユーザー情報の更新で has_secure_password validates :password, presence: true, length: { minimum: 6 }, allow_nil: true パス…

成果物の作成5 新規ユーザー登録機能とセッションの実装

ユーザ登録周りは一回やっているので割とスムーズに作れました。 業務ではチーム開発になると思われるので、作業用ブランチからプルリクを出して、Githubでマージする、という手法を試したのですが、 途中ででやらかして、マージの時にコードが消えちゃうや…

成果物の作成4 Userモデルの作成

ログイン機能や、投稿者にユーザ名を表示するのに使います。 とりあえず制作するUserモデル ID name email created_at updated_at password_digest 1 hoge foo@.bar.com 作成日時 更新日時 暗号化パスワード 後々付け足していきます。 emailに関しては一意性…

成果物の作成3 bootstrapの導入

スタイルの導入です。 bootstrapを導入するためにgemgfileにbootstrap-sassを加えます。 これを使うためにはscssファイルが必要なので、app/assets/stylesheets/custom.scssを作ります。 ルートページや、aboutページ、contactページ、signupページ、フッタ…

成果物の作成2 開発環境の立ち上げ

まずcloud9に新しいenvironmentを立ち上げます 次にRailsのインストール GitとGithubの登録 herokuの設定とデプロイテスト を済ませます。 まずHomeページの制作から入っていきたいと思います。 まずヘッダーに表示させたいページは ログアウト時はHome、Abo…

成果物の作成1 ブログwebサービスの構想

どんなwebサービスを作るか まず、どんなwebサービスを作るか考えたのですが、 前々からきちんとしたメディア系のサービスが作りたいと思っていたのと、 だいたいどのweb系の会社でもメディア系サービスのような媒体は持っているらしいので、仕事として需要…

Railsチュートリアル 第14章 ユーザーをフォローする

いよいよ、最終章です! 完走ですね。 ただ、今回はより高度なモデリングを扱うようで、難易度高めみたいなので、気を抜かずに理解していきたいと思います。 フォロー機構の概要 今回はフォローとフォロワー機能を追加します。 自分がフォローしている相手は…

Railsチュートリアル 第13章 ユーザーのマイクロポスト

Railsチュートリアルもいよいよ終わりに近づいてきて、ワクワクが止まりません。 今まではユーザーのモデルや、ログイン機構や、そのセッション管理だったのですが、いよいよ投稿機能の実装に入っていきwebサービスの体を成していきます。 13.1.1 基本的なモ…

Railsチュートリアル12章 パスワードの再設定

11章最後の起こった外部サービスが原因でメールが送れない問題ですが、無事に解決できました。 SendGrid社のフィルタリングに引っかかってしまい、アカウントが停止になってしまったようなので、 こういう場合はSendGrid社の米本社の方の文面を送ってほしい…

Railsチュートリアル 第11章 アカウントの有効化

今回は 登録されたメールアドレスが、本当にそのメールアドレスが本人なのか確認する為に、 アカウントを有効化するステップを新規登録の途中に差し込むことで、本当にそのメールアドレスの持ち主なのかどうかを確認できるようします。 よくwebサービスにあ…

Railsチュートリアル 10章 ユーザーの更新・表示・削除

10章ではUsersのRESTアクションのうち、これまで未実装だったedit、update、index、destroyアクションを加え、userコントローラーのアクションを完成させます。 復習 10.1演習でパーシャルが出てくるが、パーシャルのファイル名の頭にはアンダースコアを書く…

Railsチュートリアル9章 発展的なログイン機構

8章に続いてログイン機能の追加です。 8章はブラウザを閉じてしまうとログイン情報が消える一時的なログイン機能(sessionメソッドを利用)でしたが、9章では永続化クッキーを使って、ブラウザを再起動した後でもすぐにログインできる機能 (remember me)を…

Railsチュートリアル8章   基本的なログイン機構

セッション、クッキー周りはnode.jsで触り程度に学習済みですが、復習も兼ねて記録します。 セッションの説明 httpにはリクエスト、レスポンスの一対のやり取りで全て終わり、次回以降に情報を保持する仕組みがありません。(ステートレス・プロトコル) そこ…

Railsチュートリアル7章 ユーザー登録

まずはデバッグをしやすくするためにhtmlにデバッグ情報を表示させる部分をフッターに実装 <%= debug(params) if Rails.env.development? %> これでparams情報がサイト上で取得できるようになる REST思想とは…アプリケーションを構成するコンポーネント (ユ…

Railsチュートリアル6章 ユーザーのモデルを作成する

今回はモデル作成回です。 RailsではActiveRecordというRailsライブラリとマイグレーション機能によって、RDBから切り離されているため、SQL言語を使う必要がない。 モデルの作成方法 rails generate model モデル名 カラム名:データ型 カラム名:データ型...…

はてなブログのMarkdown記法

はてなブログを初めたが、マークダウン記法に慣れていないのでメモ 改行 行末に半角スペースを2個以上入れると改行になる 見出し下線(=や-は何個でも良い) 箇条書き 行頭に「」をつけると箇条書きになる 「」の直後に半角スペースかタブが必要 箇条書きの前…

railsチュートリアル5章追記

パーシャルとは パーシャルという機能を使うことによって似たようなコードを1つにまとめることができる。 なお、パーシャルのファイル名の頭にはアンダースコア(アンダーバー)を付加します。 よくviewで使うことになる。またrenderというメソッドを使用する…

Railsチュートリアル5章

レイアウト 途中まで書いた文がエラーにより消えてしまったので、途中から アセットパイプラインとは Ruby on Railsのアプリケーション内で使用したいJavaScriptやCSS、画像ファイルを「開発作業がしやすいようにファイルを分割してコーディングができるよう…

cloud9操作方法

ショートカットキーを使う機会も多くなったので、メモ undo(直前状態に戻す) Ctl+z redo(undoする前の状態に戻す) Ctrl+y

Railsチュートリアル4章

最初はテストの書き換え HomeページのtitleでHomeが含まれていなければ成功というテストコードに変更する作業。 assert_select "title", "Home | Ruby on Rails Tutorial Sample App"の部分のHome | を抜き、 タイトルにRuby on Rails Tutorial Sample Appと…

ブログ開設

閲覧ありがとうございます。 技術の習得、定着、アウトプットを目的として、本日より技術ブログを解説したいと思います! 主にRubyOnRailsや、日々思うことをその時の気分で書いて行くことになると思います

今までの学習成果。

今までやってきた学習内容です。 N予備校プログラミング入門コース完了 JavaScript/node.js/Express html/css Vagrant/Rlogin git/github postgreSQL 以上を用いた成果物の制作。 progateRuby/RubyOnRailsコース完了 現在はRailsの学習のため、Railsチュート…