ビューとテンプレートをレンダリングするためにマリオネットを使用しています。
ビューにコレクションを渡すだけでなく、追加のカスタム変数をテンプレートに表示する必要もあります。たとえば、以下に示すように「ニックネーム」などです。
現在、コレクションを「message_view」に渡すだけです。「ニックネーム」のカスタム変数を渡すにはどうすればよいですか?
//template JST["backbone/templates/messages/index"]
.message_wrapper
.title
//NEED TO DISPLAY NICKNAME here
%h4 Chat with <%= nickname %>
%ul.messages
%li.message.load_more_messages
ビューとコントローラーは次のように設定されます。
List.Controller =
listMessages: (nickname) ->
messages = new Onethingaday.Collections.MessagesCollection()
messages.url = "/v1/messages/#{nickname}.json"
messages.remoteGet
success: (collection, response) =>
//ONLY PASSING IN COLLECTION TO MESSAGE VIEW, NEED VARIABLE NICKNAME AS WELL
messages_view = new List.Messages
collection: collection
@layout.messagesRegion.show(messages_view)
class List.Message extends Marionette.ItemView
template: JST["backbone/templates/messages/message"]
className: 'message'
tagName: 'li'
class List.Messages extends Marionette.CompositeView
template: JST["backbone/templates/messages/index"]
itemView: List.Message
itemViewContainer: "ul.messages"