一部不具合を含んだコードや誤った記述があったため、質問を削除しました。再度調べ直して投稿します。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
order( ) の引数は database の table にある column名(かそれをSymbolにした物)、もしくはSQLの集計関数です。
order("#{cms_fragment_content(:day_of_the_month)}")
とクォーテーションだ囲まれているということは、column名か関数を表すのString で Dateオブジェクト では無いです。
しかしcms_fragment_content(:day_of_the_month)がDateを返すとなると、それってcolumnにはないと思うのです。cms_fragment_content(:day_of_the_month)
が実際にどんな値なのかは確認してください。column名でないとエラーになるであろうと思うのでちと不思議に思いますが。
出てきたSQLを見ると position でのようですが、それがDateオブジェクトにはみえないので。
Dateオブジェクトがpositionにばけ、また指定していない ASC が出てきてます。もしかして、、、
root.children.published はscope ですね?この定義の中に order が入っていたりしませんか?
投稿2020/10/31 11:15
総合スコア23567
0
comfortable-mexican-sofa のgithubより
ruby
1order(created_at: :desc)
という記述があったので、
diff
1-articles = @cms_site.pages.includes(:categories).root.children.published.order("#{cms_fragment_content(:day_of_the_month)}").reverse_order 2+articles = @cms_site.pages.includes(:categories).root.children.published.order("#{cms_fragment_content(:day_of_the_month)}": :desc).reverse_order
とかどうですか?
投稿2020/10/29 09:27
総合スコア193
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/29 10:00
2020/10/29 10:01
2020/10/29 10:36
2020/11/01 01:24
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/01 01:23 編集
2020/11/01 01:34
2020/11/01 01:52
2020/11/01 01:58
2020/11/01 02:10
2020/11/01 02:30
2020/11/01 02:49
2020/11/01 02:58
2020/11/01 03:25