我試圖得到一個更好的設置用於更新與嵌套屬性的模型工作。cfwheels - 更新嵌套屬性與複合鍵表
現在在我的編輯視圖我定義textFieldTag手動創建通過設置名稱"myModel[myNestedProperty][#modelID#,#key2id#][name]"
的PARAMS結構...
如果我只是用myModel.update(params.myModel)
我不能如果有任何需要刪除的元素,則可以使更新工作
因此,我銷燬了與myModel具有相同標識的嵌套屬性的所有模型,在這種情況下它可以工作。
的缺點是,如果更新失敗,嵌套的屬性都消失了。
我試過在刪除它們之前先抓住所有模型,然後將它們加入.save
,但由於某些原因,這不起作用。
看起來像cfwheel是爲這種類型的複選框的關係設置,但我需要它與文本字段並選擇我的表單中的項目。
更新
我意識到,我有另外一個問題。從本質上講,我想在這個擴大到能夠跨越多個嵌套的屬性和關係使用它。
的問題是在我的方式設置的名稱特別是對於選擇下拉菜單:
name="myModel[myNestedProperty][#modelID#, ][nestedID]"
的問題是,第二個ID不能聲明,因爲它會被指定爲ID,而不是使用我選擇的價值。
說實話,這是我一直與我一直爭鬥的一個問題。我處理它通過在控制器再生的模型,我只是忘了我還沒有解決這個問題呢。
有沒有一種方法,我可以讓這些值根本不被使用,並讓它們從結構動態填充?
比方說,我有(截斷)名稱tcat[34,0][catID]
或tcat[34,][catID]
(其中catID應該是第二個ID)。
的PARAMS'獲取生成TCAT結構是
[34,0]{catID = 12,14,18}
或
[34,]{catID = 12,14,18}
我想要PARAMS' TCAT結構具有多個結構喜歡:
[34,12]{tID = 34; catID = 12}
[34,14]{tID = 34; catID = 14}
[34,18]{tID = 34; catID = 18}
有沒有解決的辦法?
我正在處理大量的複合鍵嵌套屬性,如果我可以單獨使用這個部分,它會使它更容易。我知道一種方法是用javascript更新名稱,但我認爲這將是(非常非常)最後的手段。
丹尼爾 - 對不起,你還沒有回答你的問題。我會與Stack Overflow之外的CF Wheels人員聯繫,看看我能否讓他暗示。你的問題相當複雜,但:) –
用戶如何表示刪除?通過複選框?你使用什麼界面元素?需要更多關於您的具體情況的例子。 –
如果一個字段留空'EQ'''那麼它不會被添加 – Daniel