我正在尝试通过 GET 方法调用我的服务器操作 /users/menus,但它似乎只能与 REST 代理一起使用。
这是我的商店声明:
Ext.define('App.store.Menu', {
extend: 'Ext.data.Store',
model: 'App.model.Menu',
proxy: {
type: 'ajax',
reader: {
type: 'json'
},
api: {
read: 'users/menus'
}
}
});
这是我加载商店的方式:
var store = Ext.create('App.store.Menu').load({
id: 1,
callback: function () {
//do something...
}
});
这是我的rails代码:
def menus
@user = User.find(params[:id])
@menus = @user.menus
respond_to do |format|
format.html # menus.html.erb
format.json { render json: @menus }
end
end
我在服务器上收到此错误:
ActiveRecord::RecordNotFound (Couldn't find User with id=menus):
app/controllers/users_controller.rb:16:in `show'
但如果我使用 REST 代理,我会收到正确的请求:
Ext.define('App.store.Menu', {
extend: 'Ext.data.Store',
model: 'App.model.Menu',
proxy: {
type: 'rest',
format: 'json',
url: 'users/menus'
}
});