【发布时间】:2010-09-12 19:25:03
【问题描述】:
我想分享一些控制器方法。在 ruby on rails 中执行此操作的最佳实践是什么?我应该创建一个我的控制器扩展的抽象类,还是应该创建模块并将其添加到每个控制器中?下面是我要分享的控制器方法:
def driving_directions
@address_to = params[:address_to]
@address_from = params[:address_from]
@map_center = params[:map_center_start]
# if we were not given a center point to start our map on
# let's create one.
if !@map_center && @address_to
@map_center = GeoKit::Geocoders::MultiGeocoder.geocode(@address_to).ll
elsif !@map_center && @address_from
@map_center = GeoKit::Geocoders::MultiGeocoder.geocode(@address_from).ll
end
end
def printer_friendly
starting_point = params[:starting_point].split(',').collect{|e|e.to_f}
ne = params[:ne].split(',').collect{|e|e.to_f}
sw = params[:sw].split(',').collect{|e|e.to_f}
size = params[:size].split(',').collect{|e|e.to_f}
address = params[:address]
@markers = retrieve_points(ne,sw,size,false)
@map = initialize_map([[sw[0],sw[1]],[ne[0],ne[1]]],[starting_point[0],starting_point[1]],false,@markers,true)
@address_string = address
end
【问题讨论】:
-
在这种情况下不使用 application.rb 是否有特殊原因?
-
只有部分控制器会使用代码,但不是全部。
标签: ruby-on-rails ruby