BEMとは? Block(かたまり) Element(要素) Modifier(修飾) この頭文字をとったCSS設計の一つ Block ヘッダー、メイン、フッターなどのかたまりをBlockといい、BlockはBlockを含めることができる 例えばコメントブロックがあったとして、BEMで定義するとこの…
詳細度(高い順) !important インライン記法(style属性) IDセレクタ クラスセレクタ・属性セレクタ・擬似クラス 要素セレクタ・擬似要素 ユニバーサルセレクタ !importantの使い方 プロパティの値の後ろに半角スペースを空けて!importantと記述する .title { …
continueを使うとその条件に当てはまる時は処理がスキップされる。 for(let i = 1; i <= 10; i++){ if(i % 3 === 0) { continue; } console.log(i); } breakを使うと条件に当てはまると処理が実行されず、その後の処理も実行されない。 for(let i = 1; i <= …
コマンド 意味 例 SELECT どのカラムのデータを取得するかを選ぶ(複数データを取得したい場合はカンマで区切る) SELECT name,age(全てが対象の場合は*) FROM どのテーブルのカラムかを選ぶ FROM users; WHERE どこのレコード(横の行)を取得するか WHERE na…
Qiitaの記事もご覧いただけたら嬉しいです qiita.com サービス概要 LINE botを使ったサービスなので、スマホからご確認ください! love-dateme.com ちょっとマンネリしてきた夫婦・カップルに久しぶりのドキドキを提供してくれる、デートサポートサービスで…
capistranoを使ってAWSへのデプロイをしようと$ bundle exec cap production deploy を実行したところ、以下のエラーと遭遇しました。 cc1plus: out of memory allocating 1085312 bytes after a total of 18100224 bytes make: *** [parser.o] エラー 1 mak…
登録フォームで日時を登録してもらう箇所があり、datetime_fieldでフォームを作っていました。 = form_with(model: @schedule, id: 'form', local: false) do |f| = f.label :start_planned_day_at, :開始時間, class: 'control-label' = f.datetime_field :…
class Schedule< ApplicationRecord belongs_to :user end belongs_toを使うことでuser_idが外部キーとなり、nilだとバリデーションで弾かれるようになります。 schedulesテーブルのuser_idの値をnilでも許容したい場合は、以下のように記述します。 class S…
fetch JavaScriptの機能の一つ。ajax、axiosはscriptタグなどでライブラリを読み込む必要がありますが、fetchはその必要がありません。 // 使用例 let body =`idToken=${idToken}` let request = new Request('/schedules', { headers: { 'Content-Type': 'a…
fetch HTTP通信を可能にする。fetch APIというらしいです。 fetchを使ってサーバーにリクエストを投げ、レスポンスからデータを取得したりするときに使う。 let request = new Request('/users', { headers: { 'Content-Type': 'application/x-www-form-urle…
コールバックとは? ある特定の瞬間に呼び出されるメソッドのこと。 例えば、「ユーザー登録する際、createする前にこの処理を実行したい」などという時にコールバックが使われます。 コールバック一覧 オブジェクトの作成 概要 before_validation バリデー…
has_secure_passwordとは railsに標準でついている機能で、パスワードをそのままデータベースに保存するのではなく、元に戻すことのできない値にハッシュ化して保存してくれます。 使いたいモデル内にhas_secure_passwordと記述するだけで簡単に使うことがで…
NOT NULL制約とは? データベースの値にNULL(railsでいうnil)を格納したくない時、NOT NULL制約をつけておくと、NULLを保存できないようにしてくれます。 使い方 ※既にデータベースが作成済みの場合のやり方です。 ①rails g migration <ファイル名>でマイグ…
その日学んだ事などをひたすらメモします。 時間が経って見返した時にも、「自分の言葉で説明できる」、「定着している」と思ったら消します。 CoC(Convention over Configuration) railsの4つの思想 rails db:migrateを複数回実行するとどうなる? (develop…
「そもそもbundlerとは?」という方はこちらをご覧ください。 【Ruby】gemとは? - rails 技術ブログ 下記のコマンドでbundlerをインストール $ gem install bundler bundlerインストール後、使えるようになるbundleコマンド一覧 コマンド 概要 bundle insta…
認証とは 相手が誰かを確認すること 例: ログインするにはメールアドレスとパスワードを入力する事で、誰であるかを確認し(認証)、ログインできる。 認可とは ある特定の条件に対して、リソースアクセスの権限を与えること 例: 記事の作成、更新→全員可能 …
コマンド 意味 $ rails db:create config/database.ymlの内容をもとにDBを作成する $ rails db:migrate db/migrateディレクトリにある全てのマイグレーションを実行する $ rails db:rollback マイグレーションのバージョンを1つ下げる $ rails db:rollback S…
はじめに 全くの未経験者である私がプログラミングスクールに入学して約2ヶ月経ち、その中で早くも意識が変わったことがありました。 この記事では、この2ヶ月で学んだ下記3点について、アウトプットしたいと思います。 ・プログラミング学習の進め方 ・エラ…
gemとは rubyのライブラリのこと。 便利な機能をまとめたもので、インストールして使うことで、作業効率をあげられる。 bundler gemを管理するためのルールで、bundler自体もgemの一種。 Gemfileを使ってgemの依存関係を管理してくれる。 gemを使うには? Ge…
$ rails routesコマンドを実行すると何が確認できるか? 私の手元で実行してみた結果がこちらです↓ Prefix Verb URI Pattern Controller#Action letter_opener_web /letter_opener LetterOpenerWeb::Engine root GET / static_pages#top login GET /login(.:…
メソッドとは? 関数とは「特定の処理をまとめた塊」のことでメソッドとも呼ばれています。 (↓下記の記事の内容を拝借しました) 【Ruby入門】 関数(メソッド)の使い方まとめ【型 引数 戻り値】 | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入…
ゲッター 通常、インスタンス変数はクラス内でないと参照できない。 クラス外でも参照したい時に使うのがゲッターメソッド。 class Dog def initialize(name) @name = name end def getName #「ゲッター」メソッド @name end end dog = Dog.new('チワワ') #…
静的型付け JavaやC,C++などの言語が静的型付け言語。 何の型が入るか宣言(intなど)が必要なため、コードの記述量が増えるといった点があるが、事前に型がわかっているので、実行速度が早くなる。 動的型付け Ruby、JavaScript、Pythonなどが動的型付け言語…
rubyを勉強する上で欠かせない、「オブジェクト指向」について自分なりにまとめてみました。 オブジェクト指向とは オブジェクトとは、簡単にいうとモノのこと。 Rubyではほとんど全てのものがオブジェクトである(ifやelseなど、一部オブジェクトでないもの…
Webブラウザでページをクリックして、そのページが表示されるまでの流れをご説明します。 まず、大まかな全体像はこちら↓ 次に1つずつ、どのような処理がされているのかを細かく見ていきます。 具体的な例えがある方がわかりやすいので、「ブログアプリの記…
assign_attributesとは Active Recordで用意されている、特定のattributeを変更するためのメソッド。 def update @article.assign_attributes(article_params) if @article.save flash[:notice] = '更新しました' redirect_to edit_admin_article_path(@arti…
例① @article.state = @article.publishable? ? :published : :publish_wait ↑の書き方は三項演算子というもの。 条件 ? 結果1 : 結果2 これは以下のように書き換えられる。 if 条件 結果1 else 結果2 end つまり、例1は以下と同じ意味 (@article.state = @a…
# コメント def foo; end #行の途中からでもコメントアウトできます #をつけることでコメントアウトできます。 複数行のコメントアウトをしたい場合は =begin ここに コメントアウトしたい文章を 入力 =end =beginと=endの間にコメントを入力 既に入力してあ…
ページネーションとは コメント一覧などを表示した時に、数が多くなると下の方までスクロールするのが大変になる。 そこで、ページを分割して表示するもの。 使い方 公式サイトはこちらです。 https://github.com/kaminari/kaminari ①Kaminariをインストール…
ブックマーク機能を実装したいと考えた時、「掲示板のユーザーは1つの掲示板に対して1ブックーマークしかできない」はずなので、そのためのバリデーションを設定します。 それを設定するのが以下のvalidates :user_id, uniqueness: { scope: :board_id }とい…