2014-04-20 75 views
0

爲了動態添加和刪除字段到嵌套窗體,我遵循了Ryans railscast#196(修訂版)。它似乎工作得很好,但我有兩個問題。rails動態地將字段添加到嵌套窗體

  1. 我在嵌套方式(子區域)2個字段使用JQuery的日期選擇器,因此對他們的一類在部分顯示的初始記錄。最初,該表格僅由1個孩子創建。在這第一個孩子行datepicker工作得很好。但是,添加新行時,帶有日期選擇器的2個字段不再有效。我相信這個問題是由於這樣一個事實,即當新記錄被創建時,它不會將類分配給它們,因此JS不會工作:(不知道如何解決這個問題,如果甚至可能的話。這是不可能的然後我需要有一個按鈕來添加一個新的記錄,基本上會做到這一點,並刷新窗體?我希望有一種方法來做到這一點動態,因爲它看起來更順暢。

  2. 當我去編輯上面的記錄相同的2個字段沒有顯示實際的日期日期是好的,我可以看到他們被保存在數據庫中我有另一個表單與datepicker有一個日期字段,但該字段是在編輯字段時它顯示了一個值,顯然,我必須設置日期字段的值的代碼不工作,再次感謝您的幫助。這兩個領域的局部觀點。

    <% fromdate_display = :fromdate %> 
    <%= f.text_field fromdate_display, placeholder: "mm/dd/yyyy", required: true, id: "price_fromdate", value: :fromdate.try(:strftime, "%m/%d/%Y") %> 
    <%= f.hidden_field :fromdate, id: "price_fromdatealt" %> 
    
    
    <% todate_display = :todate %> 
    <%= f.text_field todate_display, placeholder: "mm/dd/yyyy", required: true, id: "price_todate", value: :todate.try(:strftime, "%m/%d/%Y") %> 
    <%= f.hidden_field :todate, id: "price_todatealt" %> 
    

我試圖改變的值:要的東西如下,而是拋出一個錯誤:

value: @plan.plan_prices.fromdate.try(:strftime, "%m/%d/%Y") 

錯誤消息拋出:

undefined method `fromdate' for #<ActiveRecord::Associations::CollectionProxy::ActiveRecord_Associations_CollectionProxy_PlanPrice:0x36eb428> 
+0

我想我已經修復了第二個問題,至少部分。現在我可以看到編輯記錄的日期。我需要在我的控制器的編輯部分添加一行,以便按ID查找plan_price記錄。我還有其他問題,但我仍在研究這些問題,如果我無法解決問題,我將發佈一個單獨的問題。 – DaveInFL

回答

0

我覺得datepicker輸入不工作,因爲在datepicker插件加載後動態添加。嘗試在添加新輸入後調用js插件,也許在添加輸入的鏈接的單擊事件中。或者嘗試使用這個寶石https://github.com/nathanvda/cocoon。順便說一句,你用什麼插件作爲datepickers?

+0

我不相信我正在使用插件,我使用JQuery,我認爲它是RoR 4.x的一部分。雖然我不確定我是否理解你的答案。 datepicker在初始行上工作得很好,只是在動態添加的行上它不起作用。 – DaveInFL

+0

阿曼多,在添加新記錄後,我如何再次調用JS插件? – DaveInFL

相關問題