我在数据库中有以下数据。我的要求-在dropdwon Get和Set中有两个选项。如果我从下拉列表中选择设置选项,则需要在表内部使用数据库ParaName,Datatype,Values的值动态创建文本字段以及复选框,如下所示。用户可以通过选择复选框来编辑和删除记录。有人帮助,如何实施?
UI设计看起来像下面的格式
ParaName DataType Value
Textfield1 Textfield2 Textfield3
TestData1 String test Checkbox
TestData2 boolean true Checkbox
TestData3 int 3 Checkbox
Button Button
Save Delete
数据库
ParaName|DataType|Value
TestData1|String |test
TestData2|boolean |true
TestData3|int |3
谢谢,苏巴
获取/设置下拉列表可以使用data-remote属性通过控制器触发javascript,例如[name of controller method].html.erb
中的这种方式>
<%= select_tag :type, options_for_select([ "Get", "Set" ]), include_blank: true, data: { remote: true, url: '/same_path' } %> <div id="fields"></div>
在控制器中
respond_to :html, :js
[[控制器方法名称] .js.erb文件
$('#fields').html("<%= j render partial: 'fields' %>");
在
_fields.html.erb
中,根据需要渲染字段。您可以使用params[:type]
获取在“获取/设置”下拉列表中选择的类型。如果您需要在控制器中加载数据库对象以在任何部分中使用,则可以这样操作]
respond_to do |format|
@types = Model.all
format.html {
# perform logic here for the html view
}
format.js {
# perform logic here for the javascript view
}
end