Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何根据表中的当前值检查rails中的单选按钮标记_Ruby On Rails_Model_Radio Button_Return Value_Checked - Fatal编程技术网

Ruby on rails 如何根据表中的当前值检查rails中的单选按钮标记

Ruby on rails 如何根据表中的当前值检查rails中的单选按钮标记,ruby-on-rails,model,radio-button,return-value,checked,Ruby On Rails,Model,Radio Button,Return Value,Checked,我有一组产品设置。对于每个设置,我想添加一对单选按钮“启用”和“禁用”来表示设置状态。用户可以单击该按钮来更改当前设置表中的设置状态。我有两个产品a和B,与a相关的所有设置的状态都是“启用”,而B的所有状态都是“禁用”“。我的问题是,当我刷新网页时,选中的A和B的单选按钮是相同的。所有这些都在“禁用”状态下进行检查 我已经测试了以下功能:CurrentSetting.setting\u是否已启用?和默认设置。默认设置已启用?。测试结果表明,这些函数可以返回预期结果,即与A相关的所有设置的启用状态

我有一组产品设置。对于每个设置,我想添加一对单选按钮“启用”和“禁用”来表示设置状态。用户可以单击该按钮来更改当前设置表中的设置状态。我有两个产品a和B,与a相关的所有设置的状态都是“启用”,而B的所有状态都是“禁用”“。我的问题是,当我刷新网页时,选中的A和B的单选按钮是相同的。所有这些都在“禁用”状态下进行检查

我已经测试了以下功能:CurrentSetting.setting\u是否已启用?和默认设置。默认设置已启用?。测试结果表明,这些函数可以返回预期结果,即与A相关的所有设置的启用状态为真(“启用”),而B为假(“禁用”)。但A的按钮被选中为“禁用”

刷新网页后,如何使单选按钮显示每个设置的当前启用状态?谁能帮我个忙吗

视图中的rhtml是:

     <%@settings.each do |setting|%>
     <%setting_enabled = CurrentSetting.setting_enabled?(@product_id,setting.id)%>
        <!-- Setting on -->
        <%= radio_button_tag("settings[#{setting.key_name}]", "enabled", :checked=> setting_enabled) %>
        <!-- Setting off -->
        <%= radio_button_tag("settings[#{setting.key_name}]", "disabled", :checked=> !setting_enabled) %>
        <%= "#{setting.display_name}" %> 
        <br/>
      <%end%>

您在评论中提到您正在运行1.2.x版本的rails。基于此:



您知道/使用jquery吗?你的问题很容易解释,没错,但我只知道使用jquerySorry的解决方案,我不知道jquery。但是你能告诉我使用jquery的解决方案吗?也许我能了解一些情况。你现在做的事情是否涉及到AJAX,例如,你是否有针对任何链接、表单的remote=>true?此外,我注意到你正在使用rhtml扩展,非常旧,你使用的是什么版本的rails?我正在扩展一个基于rails 1.2.3的现有系统。我有“当前设置/设置设置”%>,单击“保存”按钮后将调用该设置。
     def self.setting_enabled? db_id, default_setting_id
         current_setting = CurrentSetting.find(:first,
                   :conditions => ['db_id = ? and default_setting_id= ? ', db_id, default_setting_id ])

        if  current_setting==nil
           return DefaultSetting.default_enabled?(default_setting_id)   #return default enabled state for this setting 
        else
           return current_setting.enabled
        end 
     end
<%= radio_button_tag("settings[#{setting.key_name}]", "enabled", setting_enabled) %>
<%= radio_button_tag("settings[#{setting.key_name}]", "disabled", !setting_enabled) %>