Ruby on rails Rails-简单循环不工作
在我的控制器中,我尝试向一个表中进行大容量插入,在我的第一次尝试中,它工作了,但是名称不知怎么地被损坏了,如下所示:(循环运行24次,这就是我想要的)Ruby on rails Rails-简单循环不工作,ruby-on-rails,ruby,Ruby On Rails,Ruby,在我的控制器中,我尝试向一个表中进行大容量插入,在我的第一次尝试中,它工作了,但是名称不知怎么地被损坏了,如下所示:(循环运行24次,这就是我想要的) test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20-21 test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20 test-port-name-0-1-2-3-4-5-6-7-8-9-
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20-21
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13
测试端口名称0-1-2-3-4-5-6-7-8-9-10-11-12
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11
测试端口名称0-1-2-3-4-5-6-7-8-9-10
测试端口名称0-1-2-3-4-5-6-7-8-9
测试端口名称0-1-2-3-4-5-6-7-8
测试端口名称0-1-2-3-4-5-6
测试端口名称0-1-2-3-4-5-6-7
测试端口名称0-1-2-3-4-5
测试端口名称0-1-2-3-4
测试端口名称0-1-2
测试端口名称0-1-2-3
测试端口名称0
测试端口名称0-1
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20-21-22
test-port-name-0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20-21-22-23
def bulk_port_import
if request.post?
#attempt create
count = 0
for i in 1..session[:no_ports]
params[:dp][:name] = params[:dp][:name] + '-' + count.to_s
@dp = DevicePort.create params[:dp]
count = count + 1
end
end
@success = "Saved." if @dp.valid?
@error = ""
@dp.errors.each_full {|e| @error += e + ", "}
redirect_to '/device/update/' + params[:dp][:device_id]
end
而不是test-port-name-0。。。。test-port-name-23
def bulk_port_import
if request.post?
#attempt create
count = 0
for i in 1..session[:no_ports]
params[:dp][:name] = params[:dp][:name] + '-' + count.to_s
@dp = DevicePort.create params[:dp]
count = count + 1
end
end
@success = "Saved." if @dp.valid?
@error = ""
@dp.errors.each_full {|e| @error += e + ", "}
redirect_to '/device/update/' + params[:dp][:device_id]
end
不同的尝试:
def bulk_port_import
if request.post?
#attempt create
i = 0
while i < session[:no_ports] do
params[:dp][:name] = params[:dp][:name] + '-' + i.to_s
@dp = DevicePort.create params[:dp]
i++
end
end
session.delete(:no_ports)
@success = "Saved." if @dp.valid?
@error = ""
@dp.errors.each_full {|e| @error += e + ", "}
redirect_to '/device/update/' + params[:dp][:device_id]
end
def批量\u端口\u导入
如果请求,请发邮件?
#尝试创建
i=0
而我
但是这样我就得到了
语法错误,意外的kEND
,我看不出我在这两种情况下都做错了什么,这可能又是愚蠢的事情。这是因为你在循环中更改了参数[:dp][:name]
def bulk_port_import
if request.post?
#attempt create
count = 0
for i in 1..session[:no_ports]
dp_name = params[:dp][:name] + '-' + count.to_s
@dp = DevicePort.create(params[:dp].merge(:name => dp_name))
count = count + 1
end
end
@success = "Saved." if @dp.valid?
@error = ""
@dp.errors.each_full {|e| @error += e + ", "}
redirect_to '/device/update/' + params[:dp][:device_id]
end