1

詳細な Arel ドキュメントを見つけようとしましたが、無駄でした。最後に、ソースコードを掘り下げてみたところ、

次のように動作します (最後の to_sql に注意してください)。

Arel::Nodes::NamedFunction.new('to_char', Audit.arel_table[:created_at], 'dd-mm-yyyy').to_sql 

そして、次のように動作します。

tzdate = Arel::Nodes::InfixOperation.new('at time zone', Arel::Nodes::InfixOperation.new('at time zone', Audits.arel_table[:created_at], 'gmt'), Time.zone.tzinfo.name)

以下は、次の理由により機能しません (最後の to_sql に注意してください) TypeError: Cannot visit Arel::Nodes::InfixOperation

Arel::Nodes::NamedFunction.new('to_char', [tzdate, 'dd-mm-yyyy']).to_sql

ここで何が起こっているのか誰か教えてもらえますか?

4

1 に答える 1