自作webアプリ1 TODOアプリ
現象 一昨日からAWS Cloud9でenvironmentに接続しようとしても「connecting...」のまま数分動かず、そのまま放置していると This is taking longer than expected. If you think there might be an issue, contact AWS Support. It might be caused by VPC c…
前置き 自作中のTODOアプリではタスクの表示順を自由に入れ替えできるようになっています。 indexページには User の Task 一覧を表示 表示の順番はranked-model gemを使って :row_order の値で制御 それぞれの Task はjQueryUIのsortableを導入してドラッグ…
表示に必要なデータはプログラム側で用意し、 テンプレートではデータを埋め込む場所や表示方法などを記述する。 前置き 「そのタスクがいくつのサブタスクを保持しているか」をindex画面に表示しています。 この部分のコードが以下です。 <td><%= task.subtasks</td>…
前置き 作成中のTODOアプリでは、ユーザーがタスクを複数所有し、それぞれのタスクがサブタスクを複数所有しています。 アクションメソッド(数個だけ抜粋) def show @user = User.find(params[:user_id]) @task = Task.find(params[:task_id]) @subtask = …
このように、テキストの改行が反映されるようになります。 simple_formatメソッドを使う このメソッドは与えられた文字列に対して 文字列を<p>で括る 改行は<br/>を付ける 連続した改行は</p><p>に変換 という処理を行います。 ただ、HTMLタグなどをサニタイズする働きもあ</p>…
目的 タスク管理アプリのタスクの説明部分にリンクを追加できるようにしたい。 つまり、text_areaなどで入力したテキストを表示する際にURLを含んでいたら自動的にリンクを作るようにしたい、ということです。 helperメソッドを作成 URIライブラリを使います…
完成したタスク管理アプリに、「ひとつのタスク内にサブタスクを作成できる機能」をアップデートで追加しました。 Subtaskモデルを作成したので、現在ルーティングはこうなっています。 Rails.application.routes.draw do get 'static_pages/home' root to: …
昨日完成したTodoアプリをHerokuにアップしました! その際2箇所でつまづいたので、記録しておきます。 pg gemがインストールできない HerokuではSQLiteがサポートされていないのでPostgreSQLを使います。 sqlite3 gemをproduction環境で使わないように、 そ…
Rails5.2.1 初の自作アプリとしてタスク管理アプリケーションを作成すべくこの一週間奮闘してきまして、本日とりあえずの完成に至りました。 Taskの並び替えをドラッグ&ドロップで実現すべくjQueryUIの導入を目指してドン詰まったのが前回の記事でしたが、…
前置き 作成中のTodoアプリケーションで、タスクのドラッグ&ドロップで並び順を自由に替えられるようにしよう!ということで qiita.com こちらの記事を参考に実装を進めていたんですが、手順を完了してもドラッグ&ドロップが動かない…… application.jsファ…
自作のアプリにログイン機能を実装しようということで Devise を試してみました。 qiita.com こちらの記事を参考にさせていただいたんですが、ひと通り設定が終わってrailsサーバー再起動のあとログイン画面を確認できたので、自動で作成されたテストを試し…
アプリケーションの目的 普段プログラミングを勉強しているときに、 「このサイトを参考にしながらこういう知識を学んで……」 「そのために前提としてまずこっちを学んで……」 とやっているうちに頭の中でごちゃごちゃになってしまう。 今回はそういった問題を…
ドットインストールのBootstrap 4入門を見ながらTodoアプリにナビゲーションバーを追加してみたけど……あれ、レイアウトがおかしいぞ…… あ!Bootstrap4追加してないじゃん! ということで、Rails(5.2.1)でBootstrap4を導入してみました (執筆時点でのbootstra…
まずは基本から assert(boolean, message = "テキスト" ) boolean(式) がtrueであればテスト成功 boolean(式) がfalseまたはnilのときはテスト失敗 テストが失敗したときにmessageに入力したテキストが表示される(省略可) 1つのテスト内にassert~メソッド…
今回も今までと同じ仕様でTODOアプリを作成しました。 課題は「テストを書きながらコードを実装すること」 このくらいの簡単なアプリだとテストを書く部分がそもそも少ないと思いますが、とりあえずやってみました。 つまずいた部分 titleとdescription属性…
4回目はGitの基本操作の習得を課題としました。 今回もレイアウトと機能は発展させていません。 「最近はGitHub Flowを使うのが主流」というツイートを見かけたので、そのGitHub Flowの流れを実際にやってみました。もちろん1人で。 まずはアプリケーション…
前回作った最低限のTODOアプリを再度作成しました。簡素な機能とレイアウトはまったく同じです。 今回学んだこと form_forヘルパーの仕組み(記事作成済み) User.new(params[:task])でForbiddenAttributesErrorが出るのは、mass assignmentの脆弱性(チュー…
form_forの使い方がいまいち分かってない。 form_for(@user) の(@user)ってそもそも何を意味するんだ……と思ったので調べました。 結論 モデルオブジェクトである form_forの引数にとるのは「モデルのオブジェクト」だということが分かりました。 Userコント…
Railsチュートリアルを終えてからはや5日、やっと最初の自作が完成しました。 はじめはUserモデルを作ってTaskと結びつけて……とか考えていたんですが、復習する箇所が多すぎてどうにも進まなかったです。 なので とりあえずハードルを極限まで下げました で…