我想根据此答案创建简单的评级控制器。 Rails 3 rateable model - How to create ajax rating?Rails帮助如何创建评级控制器
在我的表,我有:
rating_score => The current score
ratings => The number of ratings which led to the score
这里是我的速度行动:
def rate
@konkurrancer = Konkurrancer.find(params[:id])
@container = "Konkurrancer"[email protected]_s
@konkurrancer.rating_score += params[:rating].to_i
@konkurrancer.ratings += 1
@konkurrancer.save
respond_to do |format|
format.js
end
end
我的日志:
Started POST "/konkurrancers/rate/38" for 127.0.0.1 at 2011-04-03 19:28:13 +0200
Processing by KonkurrancersController#rate as JS
Parameters: {"utf8"=>"Ô£ô", "authenticity_token"=>"q+CkUReuh0mmkSjRcd+U/JmB1tV
FWHRpOeIFxy20afs=", "vind"=>{"rating"=>"6"}, "commit"=>"Gem Vind", "id"=>"38"}
←[1m←[35mKonkurrancer Load (0.0ms)←[0m SELECT `konkurrancers`.* FROM `konkurr
ancers`
←[1m←[36mCACHE (0.0ms)←[0m ←[1mSELECT `konkurrancers`.* FROM `konkurrancers`←
[0m
←[1m←[35mCACHE (0.0ms)←[0m SELECT `konkurrancers`.* FROM `konkurrancers`
←[1m←[36mKonkurrancer Load (0.0ms)←[0m ←[1mSELECT `konkurrancers`.* FROM `kon
kurrancers` WHERE (`konkurrancers`.`cached_slug` = '38') LIMIT 1←[0m
←[1m←[35mSQL (15.6ms)←[0m SELECT sluggable_id FROM slugs WHERE ((slugs.slugga
ble_type = 'Konkurrancer' AND slugs.name = '38' AND slugs.sequence = 1))
←[1m←[36mKonkurrancer Load (0.0ms)←[0m ←[1mSELECT `konkurrancers`.* FROM `kon
kurrancers` WHERE (`konkurrancers`.`id` = 38) LIMIT 1←[0m
←[1m←[35mSQL (0.0ms)←[0m BEGIN
←[1m←[36mSlug Load (0.0ms)←[0m ←[1mSELECT `slugs`.* FROM `slugs` WHERE (`slug
s`.sluggable_id = 38 AND `slugs`.sluggable_type = 'Konkurrancer') ORDER BY id DE
SC LIMIT 1←[0m
←[1m←[35mAREL (0.0ms)←[0m UPDATE `konkurrancers` SET `ratings` = 84, `updated
_at` = '2011-04-03 17:28:13' WHERE (`konkurrancers`.`id` = 38)
←[1m←[36mSQL (0.0ms)←[0m ←[1mCOMMIT←[0m
Rendered konkurrancers/_rating.html.erb (0.0ms)
Rendered konkurrancers/rate.js.erb (31.2ms)
Completed 200 OK in 250ms (Views: 171.6ms | ActiveRecord: 15.6ms)
的问题是,帕拉姆评定得到保存。
这条线哪条有19号? – demas 2011-04-03 13:57:34
@ konkurrancer.ratings + = 1 – 2011-04-03 14:20:50