Ruby on rails 困惑于将参数从JavaScript Ajax调用传递回控制器以呈现表单
场景:我单击页面上的一些对象、表行等,获取它们的id。例如,我单击提供者列表,获取提供者id。然后单击页面上的按钮: 现在我有了一个服务,它接受这些参数并将一个JSON传递给我,我希望在下一页中以表格形式显示它。所以这个按钮的点击就是原因 所以我要显示的页面中的表格是Ruby on rails 困惑于将参数从JavaScript Ajax调用传递回控制器以呈现表单,ruby-on-rails,ajax,ruby-on-rails-3.2,Ruby On Rails,Ajax,Ruby On Rails 3.2,场景:我单击页面上的一些对象、表行等,获取它们的id。例如,我单击提供者列表,获取提供者id。然后单击页面上的按钮: 现在我有了一个服务,它接受这些参数并将一个JSON传递给我,我希望在下一页中以表格形式显示它。所以这个按钮的点击就是原因 所以我要显示的页面中的表格是药房/患者,所以我有一个 PatientsController#index方法 现在,在JS端,我正在做一个类似以下的Ajax调用: // provider_id is global var and coming from the
药房/患者
,所以我有一个
PatientsController#index
方法
现在,在JS
端,我正在做一个类似以下的Ajax调用:
// provider_id is global var and coming from the clicks on other parts of the page.
//so we have some value like 234 for it.
$('.personlistbtn').click(function(e) {
$.ajax({
type: 'GET',
data : { 'provider' : provider_id, 'therapeutic_class' : 'all' },
url: '/pharmacy/patients',
async: false,
success: function (data) {
// not sure what to write in here really.
},
error: function () {
// show some oops error
}
}
});
});
这样就可以打电话给/药房/患者
现在我不知道如何处理它从那里?
病人控制员:也许是这样的
def index
if request.xhr?
@my_json = MyNetHTTPFunction.getMeBackJSON(params)
end
end
MyNetHTTPFunction.getMeBackJSON(params)
只是我编写的一个方法,它接受我传递给它的查询参数(希望是来自Ajax调用right?并查询web服务并返回我需要在视图中使用的JSON)。您需要在控制器中创建一个方法(例如def get_form
)并在指向该方法的路由中定义匹配。match'/pharmacy/patients'=>“patients#get_form”,:via=>'get'
然后呢?我的索引方法中有什么?你建议的新方法中有什么?然后你可以访问患者的get形式方法中的那些参数。你可以进行http调用并以get形式解析json。在/app/views/patients/\u myform.erb
中创建一个视图,并将其呈现为partialrender:partial=>“patients/myform”
在get_form方法中。patients索引您可能会有其他用途。可能会列出患者?使用其他方法是更好的方法。因为您只想呈现表单。