LoginSignup
1
1

More than 3 years have passed since last update.

Railsでドットが2つ並んだやつに出くわした

Posted at

カリキュラムにあったっけ?

はじめに見た時は、普通に記述ミスかと思いました。
メンターさんに聞いた時も初めは見たことないですね。と仰っていました!
調べてこれはオブジェクトと言うことを教えていただきました。

下記が問題のコードです。


date: @todays_date..@todays_date + 6)

これは、2点ドットですが、3点ドットもあります。

範囲オブジェクトというそうです。
SQLに保存する時に使用するみたいで、
・コードが少なく可読性が高い
・エラーになりにくい
上記のようなメリットがあるそうです。

どんな使いかた?

rails
User.where(age: ...30)

上記のコードが

SQL
SELECT "users".* FROM "users" WHERE "users"."age" < 30

たしかに短くなる。

初めの方のコードは、範囲抽出(Beetween)といいます。
簡単に言うと左の値から、右の値までって感じですね!

下記のページ参照させていただきました。
気になる人は見てみてください!

【Rails】範囲オブジェクト(Range)を使ったActiveRecordのwhere比較、範囲検索のコードの書き方https://simple-minds-think-alike.hatenablog.com/entry/active-record-where-with-range

1
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1