Мне нужно упорядочить свои результаты по enum
поле. Это поле называется status
может быть open
, close
, или же edit
, Теперь я хочу получить все записи, с edit
, затем open
, и наконец close
порядок.
Возможно ли это с Laravel Eloquent? Я попробовал это (это звучит смешно, но я решил попробовать), но ничего не получилось:
Survey::orderBy('status', 'edit', 'open', 'close')->get();
Попробуй это:
Survey::orderByRaw("FIELD(status, \"edit\", \"open\", \"close\")")->get();
Для Postgres попробуйте это:
Survey::orderByRaw("case status when 'edit' then 1 when 'open' then 2 when 'close' then 3 end")->get();