1
我怎麼能在arel上調用自定義sql函數? 我的意思:我們可以這樣做: arel_table [:C] .sum.as( '總結')Rails 3和arel自定義函數
我怎麼可以這樣做: arel_table [:created_at] .date_format(「%Y-%M - %d的東西') ')爲('?
我怎麼能在arel上調用自定義sql函數? 我的意思:我們可以這樣做: arel_table [:C] .sum.as( '總結')Rails 3和arel自定義函數
我怎麼可以這樣做: arel_table [:created_at] .date_format(「%Y-%M - %d的東西') ')爲('?
只有幾個函數是預定義的如sum,count,average,minimum等。 如果你想使用自定義的東西,我相信你應該使用Arel :: Nodes :: NamedFunction和數據庫特定函數。例如,對於PostgreSQL的它可以被某事像這樣:
t = Country.arel_table
func = Arel::Nodes::NamedFunction.new("to_char", [ t[:created_at], "YYYY-MM-DD"]).as("pretty_date")
query = t.project(func)
query.to_sql # => SELECT to_char("countries"."created_at", 'YYYY-MM-DD') AS pretty_date FROM "countries"
我希望這將幫助你以某種方式,歡呼聲