2011-10-02 70 views
0

我有/ invoices/controller和@service對象。Ruby on Rails:將ActiveRecord對象嵌入到JavaScript中

當/ services/1/invoices/new被調用時,會創建一個新的@invoice表單。

此處@service用於獲得數量,價格和折扣。

我想在我的Javascript中使用@ service.discounts,以便每次更改數量時都能夠更新表單中的@ invoice.price字段。

我該怎麼做?

嘗試:

invoices.coffee.erb

service = <%= @service.to_json %> 

不行的,因爲生成的JavaScript /緩存之前@服務對象是可用的。

喜歡的東西

service = <%= Service.find(1).to_json %> 

顯然作品,但它是同樣的問題:我需要動態改變的目的,根據/服務/ ID /發票/新頁

回答

0

如果對象在操作中被檢索,並在控制器中呈現,這不應該是一個問題:您所做的只是將數量乘以數量,即純JavaScript。

如果您嘗試根據未在模板中呈現的信息進行更新,那麼您可能希望使用Ajax從服務器獲取更新的數據,然後在模板中使用它(或已經返回 - 呈現的HTML或JavaScript片段等)

相關問題