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

attr_reader

attr_readerメソッドは、クラスやモジュールにインスタンス変数を読み出すためのアクセサメソッドを定義します。 class Book attr_reader :title, :price def initialize(title, price) @title = title @price = price end end book = Book.new("プロを目指…

ssh が止まってしまい、デプロイができなくなってしまいました

初学者です。自分で作成したWEBサイトを本番環境にデプロイしている最中に問題が起きました。解決策を教えていただけるとありがたいです。以下問題点です。 capistranoでデプロイ作業をしていたら途中でフリーズしたようで、ターミナルが動かなくなってしま…

配列の取り出し方

こんなRuby配列の問題があった。 fruits_price = "apple", [200, 250, 220, ["orange", [100, 120, 80]], ["melon", [1200, 1500]]] (出力) appleの合計金額は670円です orangeの合計金額は300円です melonの合計金額は2700円です Q,この配列から果物の名…

do って何?

RubyやRailsでコードを書いていると、eachやwhileなどの繰り返し処理などで array = [1, 2, 3, 4] array.each do |num| p num end みたいなものをよく見る このdoはお約束でつけるものだろうけれど、「正式にはなんていうの?」という質問をこのあいだされて…

(Rails) コントローラーとモデルに書くメソッドの違いって??

RailsでWebサイト的なものを個人で作っていると、コントローラーにはアクション定義して、変数を書いたり、メソッド定義したりするんだけれど、モデルクラスにはあまり書き込まない。 これは素人考えなのだろうけれど、モデルクラス使わなくない? これはき…

position:relative; position:absolute; しっかり理解して

なんとなくはわかっているんです。absoluteを使うときは親要素にrelativeつけとけばいいんでしょ? もっと説明できるくらい理解すべし。 ● position:relative; 相対位置で対象の要素を移動させる。 HTMLはブロック要素で、左上から縦に並んでブロックが並べ…

bundle exec  なぜ打つの

ターミナルでgemのインストールをしたりするときに使うおまじない。 でも、おまじないの意味もわからないまま使うのは日本昔ばなし的なのでよくないです。おまじないの意味を勉強しよう。 【結論】 PC内にインストールされたgemを使う設定にするか、プロジェ…

rake コマンド マイグレーションファイルの管理

ターミナルでDBにテーブル作ったり、カラム編集したりするときのrakeコマンドを覚えられていない。だから使いこなせていない。こういうのよくない。 マイグレーションファイルの管理に使うrakeコマンドをまとめる。 ① rake db:migrate マイグレーションファ…

rakeタスク

Railsで定期的に実行したい処理は、lib/tasksにrakeタスクを作って実行することが多い。定期的なメンテナンスやCSVファイルをインポートする際にアプリケーションを起動せず、ターミナルなどのコマンドプロンプトで処理を実行できる。 1、rakeタスクファイ…

resourcesにルーティングを足す

Railsのルーティングの設定にはresourcesという主要7アクションのセットがある。でもそれにルーティングを加えたい時がある。そんな時は、collectionかmemberを書く。 routes.rb resources :items do collection do post :confirm post :review end member …

管理画面と公開画面 namespaceの使いどき

Webアプリケーションの開発では管理画面と公開画面を分けてRoutingを定義して、controllerを作ってアクションを定義していくことがある。そうしないと、例えば同じitems_controller.rbに多くのアクションが定義されて読みづらくなるし、どれが管理画面用アク…

Dateクラス と Timeクラス

Rubyには日付や日時を呼び出すことのできるクラスが備え付けられている。 ●Dateクラス require 'date' puts date = Date.today => 2019-5-10 puts date.year => 2019 puts date.month => 5 puts date.wday => 5(日曜を0とした曜日の番号) puts date = Dat…

Ruby 繰り返し処理の違い

●for文 指定したオブジェクトの範囲だけ繰り返し取得する。配列の中身を取り出すのを繰り返して全て取得する。 for num in 1..5 do puts num end とすれば1〜5が表示される。 ●while文 指定した条件式がtrueである限り処理を繰り返す。条件式の指定がfor …

1,000で桁を区切る方法

Numeric#to_s.(:delimited)を使う。 例えば、入力した金額に区切りをつけるメソッドを作る。 module ProductsHelper def converting_to_jpy(price) "#{price.to_s(:delimited, delimiter: ',')}円" end end このように記述し、()内のdelimiter:',' で区切…

ぼっち演算子 &

プログラミングの勉強中は全然アウトプットできなかった。甘えです。 しかし、なんと今度プログラミングを教える側になれました。通っていたスクールのメンターで、基本的な内容のアドバイスだけなので、高度な知識はまだいらないのですが…。でも教えるから…