0
您好我是新來的骨幹,我明白,你基本上航線的JavaScript爲HTML頁面,但我似乎無法路由任何JavaScript的application.html.erb
,因爲它不有一個特定的URL。骨幹Rails的:如何添加JavaScript的HTML中application.html.erb
我可以解決這個問題,通過刪除我要上工作,並將其移動到索引頁面的HTML,但是這真正地不是我想要的。
我的 「解決方案」
的意見/職位/ post_index.js.coffee
class Poster.Views.PostsIndex extends Backbone.View
template: JST['posts/index']
events:
'click #new_post': 'createPost'
initialize: ->
@collection.on('reset', @render, this)
@collection.on('add', @appendEntry, this)
render: ->
$(@el).html(@template())
@collection.each(@appendEntry)
this
createPost: (event) ->
Backbone.history.navigate("/posts/new", true)
appendEntry: (post) ->
view = new Poster.Views.Post(model: post)
$('#posts_container').append(view.render().el)
index.jst.eco
<div id="menu_bar" class="jumbotron menu_bar row">
<div class="col-sm-2">
<button id="new_post" type="button" class="btn btn-default">Post</button>
</div>
<div class="col-offset-8 col-sm-2">
List
</div>
</div>
是什麼問題?通常情況下,「你想要處理的HTML」將從視圖模板構建,然後路由器或頁面初始化中的某些內容將實例化並呈現視圖。 –
是的,這是正確的,但application.html.erb是一個圍繞所有其他HTML包裝的文件,它沒有一個你可以訪問的URL – user2158382
我沒有看到'application.html.erb'必須做什麼任何東西。您的服務器將返回一個HTML頁面來引導Backbone應用程序,然後返回到您的路由器和JavaScript初始化,以使Backbone進行,然後完成Backbone和您的模板。 –