ターミナルを使ってあれこれしていると、「PATHが〜」というのがよく出てくる。 PATHってなんぞや。それをひとまず理解する。 「 PATHとはhogehoge.exeというプログラムが格納してあるディレクトリへの道筋である。」 「その道筋を指定することでプログラミ…
Rubyで閏年計算をするコードを作った際、Dateクラスを使ったらうまくいかなかった話。 Rubyでは日にちを計算するのに便利な機能をまとめたDateクラスが備わっています。コードのはじめに require 'date' と呼び出すと、クラス内であらかじめ定義されているメ…
rails s が途中でフリーズしてうんともすんとも言わなくなった。これはまさに鳴かないホトトギスも同然! 信長「鳴かぬなら killしてしまえ rails s」 殿の命令が下ったので、さっそくやっていきたいと思います。 ●PIDを調べる rails s が動いているProcess …
ターミナルにこのようなエラー文が表示される export PATH="/Users/xxxx/.rbenv/shims:${PATH}" export PATH="$HOME/.rbenv/bin:$PATH" source '/usr/local/Cellar/rbenv/1.1.1/libexec/../completions/rbenv.bash' command rbenv rehash 2>/dev/null rbenv(…
Rubyのプログラムを作っていて、gets.to_i を使ってみて見つけたこと。 while true do puts "[0]レビューを書く" puts "[1]レビューを読む" puts "[2]アプリを終了する" input = gets.to_i if input == 0 then posts = post_review(posts) elsif input == 1 …
状況のスクショとかできなかったのでメモだけ残す。 <発端> DBのテーブルにカラムを追加しようとしてAddColumnHogeのマグレーションファイルを作成して、add_column :hoges, :hogehoge :string とか3つのカラム情報を書き込んだ。そして「 $ bundle exec …
ハッシュが複層的に入れ子構造になっていると嫌な感じである。 例えば user_data = [ { user: { profile: { name: 'Taro' } } }, { user: { profile: { name: 'Jiro' } } }, { user: { profile: { name: 'Saburo' } } } ] 配列の中にuserキーのハッシュがあ…
テキストエディタを使っていてモヤモヤする現象のひとつ。 「新たにファイル開いたら、さっきまで見てたタブのファイルと入れ替わった。さっきのやつと見比べたかったのに!」 これ他のエディタでもなるんですが、「PreViewモード」というやつで、むやみにタ…
Rubyのオブジェクトにシンボル型オブジェクトがある。「:」をつけるやつだ。 これがキー名の指定とかでよく使う。このシンボル型とは何かを自分のものとするためにまとめる。 オブジェクトには型がある。文字列オブジェクトはString型。数字オブジェクトはI…
Railsにはもともと搭載されているメソッドがある。そのなかにヘルパーメソッドというものがある。 link_to form_tag / form_for / form_with image_tag など、よくお世話になる便利機能である。 ヘルパーメソッドはViewで活用されるものであり、htmlタグの要…
Rubyでメソッド定義していて、self.がつくときがあります。テキトーにやり過ごしていたので、この前「これなんですか?」と質問されてごにょごにょしてしまった。なので調べて備忘録。 self.はクラスメソッドにもつくのですが、今回はそれではなく、セッター…
最近のMacMojavesがMySQLと相性悪い??困る。 AppleはOpenSSLを使わなくなると?だからその分の変更手続きが必要だと? Railsのアプリケーションを立ち上げようとして、bundle innstallしたらこんなエラーがでる。 $ bundle install (略) Gem::Ext::BuildE…
最近SublimeTextからVScodeにテキストエディタを変えようとしています。 私はRubyとRailsを主に使っているのですが、.erbファイルをVScodeで書いているときに、コメントアウトが使いづらい。 というのも、erbのコメントアウト・ショートカットキーでは<%# ~ …
attr_readerメソッドは、クラスやモジュールにインスタンス変数を読み出すためのアクセサメソッドを定義します。 class Book attr_reader :title, :price def initialize(title, price) @title = title @price = price end end book = Book.new("プロを目指…
初学者です。自分で作成したWEBサイトを本番環境にデプロイしている最中に問題が起きました。解決策を教えていただけるとありがたいです。以下問題点です。 capistranoでデプロイ作業をしていたら途中でフリーズしたようで、ターミナルが動かなくなってしま…
こんなRuby配列の問題があった。 fruits_price = "apple", [200, 250, 220, ["orange", [100, 120, 80]], ["melon", [1200, 1500]]] (出力) appleの合計金額は670円です orangeの合計金額は300円です melonの合計金額は2700円です Q,この配列から果物の名…
RubyやRailsでコードを書いていると、eachやwhileなどの繰り返し処理などで array = [1, 2, 3, 4] array.each do |num| p num end みたいなものをよく見る このdoはお約束でつけるものだろうけれど、「正式にはなんていうの?」という質問をこのあいだされて…
RailsでWebサイト的なものを個人で作っていると、コントローラーにはアクション定義して、変数を書いたり、メソッド定義したりするんだけれど、モデルクラスにはあまり書き込まない。 これは素人考えなのだろうけれど、モデルクラス使わなくない? これはき…
なんとなくはわかっているんです。absoluteを使うときは親要素にrelativeつけとけばいいんでしょ? もっと説明できるくらい理解すべし。 ● position:relative; 相対位置で対象の要素を移動させる。 HTMLはブロック要素で、左上から縦に並んでブロックが並べ…
ターミナルでgemのインストールをしたりするときに使うおまじない。 でも、おまじないの意味もわからないまま使うのは日本昔ばなし的なのでよくないです。おまじないの意味を勉強しよう。 【結論】 PC内にインストールされたgemを使う設定にするか、プロジェ…
ターミナルでDBにテーブル作ったり、カラム編集したりするときのrakeコマンドを覚えられていない。だから使いこなせていない。こういうのよくない。 マイグレーションファイルの管理に使うrakeコマンドをまとめる。 ① rake db:migrate マイグレーションファ…
Railsで定期的に実行したい処理は、lib/tasksにrakeタスクを作って実行することが多い。定期的なメンテナンスやCSVファイルをインポートする際にアプリケーションを起動せず、ターミナルなどのコマンドプロンプトで処理を実行できる。 1、rakeタスクファイ…
Railsのルーティングの設定にはresourcesという主要7アクションのセットがある。でもそれにルーティングを加えたい時がある。そんな時は、collectionかmemberを書く。 routes.rb resources :items do collection do post :confirm post :review end member …
Webアプリケーションの開発では管理画面と公開画面を分けてRoutingを定義して、controllerを作ってアクションを定義していくことがある。そうしないと、例えば同じitems_controller.rbに多くのアクションが定義されて読みづらくなるし、どれが管理画面用アク…
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…
●for文 指定したオブジェクトの範囲だけ繰り返し取得する。配列の中身を取り出すのを繰り返して全て取得する。 for num in 1..5 do puts num end とすれば1〜5が表示される。 ●while文 指定した条件式がtrueである限り処理を繰り返す。条件式の指定がfor …
Numeric#to_s.(:delimited)を使う。 例えば、入力した金額に区切りをつけるメソッドを作る。 module ProductsHelper def converting_to_jpy(price) "#{price.to_s(:delimited, delimiter: ',')}円" end end このように記述し、()内のdelimiter:',' で区切…
プログラミングの勉強中は全然アウトプットできなかった。甘えです。 しかし、なんと今度プログラミングを教える側になれました。通っていたスクールのメンターで、基本的な内容のアドバイスだけなので、高度な知識はまだいらないのですが…。でも教えるから…
プログラマーの勉強として フリーランスプログラマーのアウトプットの場として ブログを始めました。 プログラマーと塾講師と学校講師のトリプルワーカーとして働いていくので、その中で思ったこと、考えたこと、見つけたことをコレクションしたい。 備忘録…