Railsコントローラーを介してデータベースから日付の配列を返そうとしています。これは、カレンダーのレンダリング中にJavascriptによって使用されます。テストのためにRailsコンソールを引き上げると動作しているようですが、ビューには表示されません。何か案は?私のコードは以下です。
ギア has_many line_items
LineItem belongs_to Gear
Javascript 変数
var $myBadDates = new Array("<%= @gear.line_items.rented %>");
返されているビュー。
var $myBadDates = new Array("[]");
ラインアイテムモデル (短縮)
class LineItem < ActiveRecord::Base
belongs_to :gear
scope :available, where(:cart_id => nil)
def self.rented
LineItem.available.collect {|x| (x.rentstart..x.rentend).to_a}
end
end
Rails コンソールからの配列
1.9.3-p194 :007 > g.line_items.rented
LineItem Load (0.7ms) SELECT `line_items`.* FROM `line_items` WHERE `line_items`.`gear_id` = 4 AND `line_items`.`cart_id` IS NULL
=> [[Tue, 12 Feb 2013, Wed, 13 Feb 2013, Thu, 14 Feb 2013, Fri, 15 Feb 2013, Sat, 16 Feb 2013, Sun, 17 Feb 2013, Mon, 18 Feb 2013, Tue, 19 Feb 2013, Wed, 20 Feb 2013, Thu, 21 Feb 2013], [Tue, 05 Feb 2013, Wed, 06 Feb 2013, Thu, 07 Feb 2013, Fri, 08 Feb 2013, Sat, 09 Feb 2013, Sun, 10 Feb 2013, Mon, 11 Feb 2013, Tue, 12 Feb 2013, Wed, 13 Feb 2013, Thu, 14 Feb 2013, Fri, 15 Feb 2013]]
更新された受け入れられた回答からの動作するJavaScriptコード
var $myBadDates = <%= @gear.line_items.rented.flatten.to_json.html_safe %>;