作者ilake (lake)
看板Ruby
标题[问题] 关於check_box的问题
时间Fri Nov 30 22:52:19 2007
环境:Ruby 1.8.6, RoR 1.2.5
list.rhtml
口 AAA_checkbox
口 BBB_checkbox
[submit]
小弟想要在按下submit之後, 可以更新check box里面object的某些值後回到list
下面是我的code
--------------------
Model
class Goal < ActiveRecord::Base
has_many :tasks
end
class Task < ActiveRecord::Base
belongs_to :goal
end
--------------------
view, list.rhtml
<% form_tag :action => 'set_check', :goal_id => goal do %>
<% for task in goal.tasks %>
<%= check_box('task', :checked, {:checked => task.checked} ) %>
<%= h(task.name) %>
<% end %>
<%= submit_tag "submit" %>
<% end %>
--------------------
controller, user_controler.rb
def set_check
@goal = Goal.find(params[:goal_id])
@tasks = @goal.tasks
for task in @tasks
task.update_attributes(params[:task])
#update
end
redirect_to :action => 'list'
end
--------
我用debug去看时, 发现controller里的for回圈, 始终都没跑进去,
这样回到list时, 所有check box 都只会跟着第一个check box勾选变动
不知道这样写是哪边出了问题(不好意思, 观念都还不熟), 还请高手提示一下
--------
还有小弟看完AWDR之後, 尝试想做个作品,
结果没想到上面的check box问题就搞了两天= =
不知道是我程度太差, 还是接下来可以在看哪本, 接近实战一点的
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.232.9.7
※ 编辑: ilake 来自: 125.232.9.7 (11/30 23:00)
1F:推 godfat:我不是很熟,所以不是很确定这样错在哪,但是看起来觉得 12/01 01:15
2F:→ godfat:有那麽一点怪怪的,我觉得你可以把AWDR看更熟,不用找其他书 12/01 01:15
3F:→ godfat:and, form_for 不好吗?尽量不要用 ooo_tag 12/01 01:16
4F:推 shelary:看起来是名称重覆...因为你每个checkbox都同名字丫 >_< 12/01 04:43