箱のプログラミング日記。

えんじにあ奮闘記

2019-05-01から1ヶ月間の記事一覧

form_forの書き方・使い方

form_forがなかなか理解できず、いつもコピペでしたが ついにしっかり理解しなきゃいけない日が来たので、ざっと調べてみました。 form_forの基本構文 <%= form_for(@article) do |f| %> ~~中身~~ <% end %> form_forはRailsのヘルパーのひとつで、 HTMLで言…

Railsでアプリケーションを作る【最初の作業】

まだ初心者ですが、Railsで簡単なアプリケーションを作れるくらいのレベルにはなったので、 多分初学者がつまづきやすい(というか忘れがちな) 「アプリケーションを作るときの最初の第一歩」をまとめておこうと思います。 ※RubyやRailsの開発環境が整って…

form,input,labelの違いを改めて

今までhtmlのformが苦手であまり理解できていませんでしたが、 今日labelも含めてかなり理解度が高まったので残しておきます。 formタグ ユーザーに何かを入力させたり、情報を送信させたい時に使う。 formタグで囲まれた要素の中に、それぞれの入力欄やボタ…

githubの使い方【概念】

共同開発において避けて通れない、githubについて 初学者向けにまとめておきたいと思います。 まず、gitとは ローカル環境で開発したソースコードなどの作成・編集履歴をリモートのリポジトリに保存しておくことができる仕組みのこと。 自分のPC内のデータを…

calc()の使い方【CSS】

CSS

CSSでレイアウトを指定したい時、 heightやwidthに対して一般的に使うのはpxとかですが、 便利に使えるcalcというものがあります。 width: calc(100% - 150px); たとえば親要素に対て二つの子要素があり その二つが横並びになっていたとします。 通常だと、…

部分テンプレートとrenderの使い方

renderとは 部分テンプレート化する時に使える。 複数のページで共通して使われるレイアウト部分がある場合、 そのhtmlを各ファイルでいちいち記述するのは面倒臭いし、美しくない。 そこで、その共通部分を抜き出し、独立したファイルとして作成し、 それを…

モデルに書くゲッターの使いどころ

まだRubyとRailsの学習を初めて3週間程度の初学者ですが、 今日「初学者ならではの目線」である疑問が浮かびました。 def review_average reviews.average(:rate).round end 何かの値を返してくれるだけのために定義するメソッドをゲッターと呼びますが、 …

N+1問題とは

N+1問題について、なかなか理解できなかったのですが 今日やっと理解できたので、残しておきたいと思います。 N+1問題はデータベースの話 N+1問題は「includes」によって解消できる 「includes」はモデルに対して使うメソッド コントローラーのアクション内…

form_tagの基本構造と使い方

form_tagの基本構造と記述の仕方について、使い方をよく理解していなかったのでまとめました。 form_tagとは railsでアプリケーションを作成する際のヘルパーメソッドで、 HTMLで投稿フォームを作成するよりも簡単に作ることができ、 セキュリティ面でもform…

よくあるRailsのエラーとその対処法

よくあるエラーとその対処法についてまとめました。 syntax error No Method Error Pending migration error Temolate is missing Routing Error 以下、それぞれのエラーの内容と対処法です。 エラーっぽく赤で表示していきます笑 1.syntax error 意味 Ruby…

position: absolute; がうまく使えない

CSS

HTMLで要素を絶対配置したい時に使う「position: absolute;」ですが、 いつも使い方があやふやで迷った結果思い通りに配置されないことが多いので、まとめておきます。 そもそもの用語の意味 position: relative; (相対的な) position: absolute; (絶対的…

devise導入方法

deviseのインストールからモデル生成までの流れをまとめました。 Gemファイルに「gem 'devise'」と追記 $ bundle install $ rails g devise:install $ rails g devise:views $ rails g devise モデル名 $rake db:migrate サーバーの再起動 1.Gemファイルに「…

HTMLにおける<i>タグの使い方

HTMLにおける<i>タグの使い方 <i>タグを初めて見かけて、これはなんぞやと思ったので残しておきます。 <i>タグは、一般的に人の声や心情を表したい時に使うもの。 「i」は「italic」の意味で、<i>タグで囲まれた部分はブラウザで結果的に斜体で表現されます。 ただ、用途</i></i></i></i>…

「1:多」の関係性

「1:多」の関係性とは 例)ツイッターの場合 ユーザーがツイートをすると、そのツイートに対してコメントが投稿される。 この時、 ツイートが複数のコメントをもち、一つのコメントは必ずどれかしらのツイートに所属している関係性が成り立つ。これをプロ…

マイグレーションファイルの作成・実行

新しくテーブルを作りたい railsでのアプリケーション開発に当たって、新しくテーブルを作成したい時は、以下の手順で行う。 ①モデルの作成(≒テーブルの作成) ②生成されたマイグレーションファイルの編集 ③マイグレーションの実行 ①ターミナルから以下のコ…

deviseとかgemって何だろう

deviseとは? deviseとは、railsによるアプリケーション開発を楽にしてくれるGemの一種。 Gemというのはrailsでの開発を楽にしてくれるソフトウェアたちのことを指す。 インストールすると使えて、オープンソース(=誰でも使える)。 railsを使う人たちが作…

メソッドってそもそも何のために使うの?

メソッドとは何なのか Rubyにおけるメソッドの考え方が難しくて、概念を理解するまでに何度もつまづいたので残しておこうと思います。 どういう時にメソッドを生成するのか ⇨何かの値を定義したい時。 それなら、変数でいいのでは? ⇨変数だと、変数に代入さ…

メソッド内でハッシュの中身を取り出す【引数】【ハッシュ】

例) def dog_info(dog,input) puts dog[input] end dog = {name: "コロン", type: => "チワワ", gender: => "メス"} puts "以下から知りたい情報を一つ選んでください ・name ・type ・gender" input = gets.chomp dog_info(dog,input) 解説) 以下の情報を…

rubyにおけるwhile文の仕組みについて

rubyにおけるwhile文の仕組み よくif文と混同されることがありますが、 while文もif分も「この条件の時にこれをしてくださいよ」と指示をするものです。 if分の場合、処理を行うかどうかの条件はtrueかfalseによって判断されます。 つまり、基本形は「これが…