Render的理解

render的参数1:collection,例子 render partial: "car_info", collection: @cars 的意思是把@cars的每一项当作参数传入_car_info的模板并返回结果,从而不用在调用的时候写each语句勒。

如果模板名字就叫_car的话,也可以简写成 render @cars,rails会自动去views/car/下寻找_car.html.erb模板参数collection是@cars。

Rails 在 partial 中 传递 collection,默认的循环变量 是 partial的名字(约定)。或者你想改变变量名的话,可以使用 :as 参数声明一个变量。

 

 

 

  参数2:locals,例子 render partial: ”car_info", locals: { car_arr: @cars } 的意思是传给模板_car_info一个名字叫car_arr的参数,参数值是@cars,这样的话在模板中直接调用car_arr就行。

同样的也可以简写成 render ”car_info", car_arr: @cars,意思和上边的一样。

 

猜你喜欢

转载自wudixiaotie.iteye.com/blog/2034973
今日推荐