質問編集履歴

3

修正

2020/11/04 02:09

投稿

MH00214
MH00214

スコア53

test CHANGED
File without changes
test CHANGED
@@ -1,37 +1 @@
1
- ## 解決したい問題
2
-
3
-
4
-
5
- mexican sofaをベースにページの作成をしています。
6
-
7
-
8
-
9
- cms_fragment_content(:day_of_the_month)を元に要素の並べ替えをしているのですが、無理やりreverse_orderで順番を逆にする以外のやり方で、DESC(降順)の並びにする方法はありませんでしょうか?
10
-
11
-
12
-
13
- なければそのまま下記のコードで進めようかなと思ているのです、DESC使った方がわかりやすいのかなと思いまして質問をさせていただきました。
1
+ 一部不具合を含んだコードや誤た記述ったため、質問を削除しました。再度調べ直して投稿します。
14
-
15
-
16
-
17
- ## 試したコード
18
-
19
- ```Rails
20
-
21
- articles = @cms_site.pages.includes(:categories).root.children.published.order("#{cms_fragment_content(:day_of_the_month)}").reverse_order
22
-
23
- ```
24
-
25
-
26
-
27
- 追記
28
-
29
- 上で書いた方法は、たまたま動いているようです…
30
-
31
- .order("#{cms_fragment_content(:day_of_the_month)}")の記述で並べ替えのクエリが発行されるわけではないので…。
32
-
33
- 推測ですが、DBのカラムにないものを使おうとしているので、そこはそのまま無視されて、reorderで逆順(降順)になっているだけかと思っています。
34
-
35
- 補足として
36
-
37
- cms_fragment_content(:day_of_the_month)は.classで見るとStringと返ってきて、.to_sを使うと2020-08-02 00:00:00 +0900のような値で返ってきます。

2

修正2

2020/11/04 02:09

投稿

MH00214
MH00214

スコア53

test CHANGED
File without changes
test CHANGED
@@ -14,9 +14,7 @@
14
14
 
15
15
 
16
16
 
17
- ## 試したコード(一応これで動作はしています)
17
+ ## 試したコード
18
-
19
-
20
18
 
21
19
  ```Rails
22
20
 

1

修正

2020/11/01 02:05

投稿

MH00214
MH00214

スコア53

test CHANGED
File without changes
test CHANGED
@@ -23,3 +23,17 @@
23
23
  articles = @cms_site.pages.includes(:categories).root.children.published.order("#{cms_fragment_content(:day_of_the_month)}").reverse_order
24
24
 
25
25
  ```
26
+
27
+
28
+
29
+ 追記
30
+
31
+ 上で書いた方法は、たまたま動いているようです…
32
+
33
+ .order("#{cms_fragment_content(:day_of_the_month)}")の記述で並べ替えのクエリが発行されるわけではないので…。
34
+
35
+ 推測ですが、DBのカラムにないものを使おうとしているので、そこはそのまま無視されて、reorderで逆順(降順)になっているだけかと思っています。
36
+
37
+ 補足として
38
+
39
+ cms_fragment_content(:day_of_the_month)は.classで見るとStringと返ってきて、.to_sを使うと2020-08-02 00:00:00 +0900のような値で返ってきます。