我正在嘗試使用Backbone.Marionette來構建應用程序。應用程序通過REST調用獲取其數據。Backbone Marionette中的表單選擇框
在這個應用程序,我創建了包含以下字段的模型:
- ID
- 名
- 語言
- 型
我還創建了一個ItemView控件包含完整的模型。我使用的模板是這樣的:
<form>
<input id="model-id" class="uneditable-input" name="id" type="text" value="{{id}}"/>
<input id="model-name" class="uneditable-input" name="name" type="text" value="{{name}}" />
<select id="model-language" name="language"></select>
<select id="model-type" name="type"></select>
<button class="btn btn-submit">Save</button>
</form>
(我使用Twig.js的渲染模板)
我能成功地獲取模型的數據並顯示視圖。
我現在想要做的是填充模型語言和模型類型的選擇框和選項。語言和類型字段也會被REST調用的結果限制爲值,即,我有一個語言列表和一個通過REST提供給我的類型列表。
我正在考慮擁有兩個集合,一個用於語言,一個用於類型,爲每個集合(即viewLanguageSelectOptions和viewTypeSelectOptions)創建一個視圖,以上述模板的形式呈現選項。我不確定的是,如果這是可能的,或者在哪裏做選項填充以及如何根據模型中的數據設置選定的選項。即使通過查看可用的示例和文檔,我也不清楚哪種Marionette視圖類型最適合實現。也許我在看錯方向。
換句話說,我現在卡住了,我想知道你們任何一位骨幹用戶都有建議或解決方案。希望你能幫助!
謝謝!我自己想到了這一點,並打算在這裏寫下答案:)無論如何,我完全是這樣做的:我已經分離了控制器部分和視圖部分的文件。在控制器部分,我向REST服務器請求語言和類型。在成功獲取後,我將它們作爲選項傳遞給視圖。在視圖的serializeData處理程序中,我將選項插入要在模板呈現中使用的數據中。檢查是否選擇了正確的選項是通過比較所選選項和渲染選項在模板中處理的。 – Vanderstaaij