Note To Self ~One Step At A Time~

AUTHOR
kkawazoe
156 Posts
62 Tags

Ruby on Rails

Rails の order by で自分を優先的に取得する(MySql 限定)

  • Feb 25, 2019
  • POST
確認環境 ruby: ruby 2.5.3 rails: rails 5.2.2 方法 Mysqlの FIELD 関数を使用する※FIELD 関数の結果で ORDER BY する 例. レコードを order 昇順, user_id 昇順で並び替える場合 ※同じ順位の場合は自分を優先 order(:order, ["field(user_id , #{current_user.id}) desc"], :user_id) ※ ポイントとしては第2ソートキーの前に ORDER BY FIELD を使用すること また、ORDER BY FIELD で指定した分に対して desc を指定すること ※ desc を指定しないと自分以外が優先的に並び替えられてしまう)

Rails で階層構造になっているテーブルに自分自身への関連を設定する

  • Feb 21, 2019
  • POST
テーブル構成例 [Nodesテーブル] 最上位のノード以外は親ノードを持っている id name parent_id 1 parrent_node null 2 child_node_1 1 3 child_node_2 1 4 child_node_1_1 2 5 child_node_1_2 2 6 child_node_2_1 3 7 child_node_2_2 3 確認環境 ruby: ruby 2.5.3 rails: rails 5.2.2 実際のコード class Node < ApplicationRecord has_many :children, class_name: "Node", foreign_key: "parrent_id" belongs_to :parrent, class_name: "Node", optional: true # rails5 から default が require になっているため `optional: true` を指定しないと `nil` での保存が不可 end class CreateNodes < ActiveRecord::Migration[5.
  • ««
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
  • »»
LATESTS
RSpec で Cookie のテストを行う方法
  • Jun 19, 2025
  • POST
Serverless 構成で lambda ローカルデバッグ用に AWS SAM CLI を使用する
  • May 16, 2025
  • POST
Rails 8 docker を使用している場合に rspec > requests spec で 403 エラーが発生した場合の確認点について
  • May 8, 2025
  • POST
Rails 8 rails new コマンドのオプションについて
  • Apr 14, 2025
  • POST
Cursor と Confluence および Jira との連携方法
  • Apr 3, 2025
  • POST
Rails 8 リリースノートまとめ
  • Mar 19, 2025
  • POST
Rails 7.2 リリースノートまとめ
  • Mar 19, 2025
  • POST
Rails 7.1 リリースノートまとめ
  • Mar 18, 2025
  • POST
Rails 7 リリースノートまとめ
  • Mar 18, 2025
  • POST
Tbls についての Tips
  • Mar 14, 2025
  • POST
TAGS
  • ruby-on-rails (42)
  • tool (40)
  • aws (31)
  • 資格 (15)
  • github (8)
  • postgresql (8)
  • amazon-rds (4)
  • rspec (4)
  • vue.js (4)
  • aws-cognito (3)
ABOUT
プライバシーポリシー
  • Mar 1, 2019
  • OTHER
マインドマップ

© Note To Self ~One Step At A Time~

Powered by Hugo.

Robust designed by Daisuke Tsuji.