![](/img/trans.png)
[英]Ruby on Rails with Unobtrusive JavaScript - Managing URLs
[英](Ruby, Rails, Javascript) Managing nested models using javascript windows, etc…?
我目前正在开发具有4个嵌套模型的Rails应用程序(根据THIS POST )。 我已经考虑过使用JavaScript在一页上管理它们。 它似乎可行(与Rails中的许多事情一样),但是,不推荐这样做。
也就是说,我希望通过代理页面进行管理。 当前的模型结构如下:
Sites 'has_many' Buildings 'has_many' Controllers 'has_many' Measurements
我当前的目标是通过Javascript“窗口”管理项目。 例如,“站点”索引页面的每个站点列表旁边将具有“管理建筑物”。 单击链接将打开一个“建筑物”索引页面,其中仅包含该站点的现有建筑物以及添加新建筑物的功能。 然后,当然,每个建筑物页面将具有“管理控制器”,依此类推,依次类推。
考虑到这一点,在我将自己撕成“ active_scaffold”之类的东西之前,是否有人对实现这种类型的对象管理有任何建议/建议? 我的问题主要与必要的Javascript等有关,但是,如果您有任何“陷阱”,我当然也想知道。
最好。
听起来像一个有趣的界面,只是个想法……您可能要考虑将控制器或测量值制作为对话框视图,以减少UI混乱。 开始:
在您的路线中:
map.resources :sites do |site|
site.resources :buildings do |building|
building.resources :controllers do |controller|
controller.resources :measurements
end
end
end
您可能希望在前面介绍嵌套资源以降低复杂性。
网站检视
(为简洁起见,以HAML编写):
%ul#sites{:style => 'float:left'}
-@sites.each do |s|
%li= link_to s.name, site_buildings_path(s)
%ul#buildings
%li click on a site to view buildings for that site
网站JavaScript(jquery):
$('ul#site > li a').live('click', function(){
link = $(this).attr('href');
$.get(link, function(data, textStatus){
$('#buildings').empty().append(data)
});
);
提交上述$ .get请求后返回的建筑物部分:
-@buildings.each do |bldg|
%li= link_to bldg.name, building_controllers_path(bldg)
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.