我有一个表单,它根据用户输入的设备名称以及其他一些数据创建一个新设备。我想在我的设备上运行查询以查看他们输入的名称是否已经存在,这样他们就不会创建具有重复名称的设备。无论我如何设置查询来进行搜索,该方法总是声明设备已经存在,即使它不存在。如果没有条件语句,代码会适当地创建设备。有什么想法可以解决这个问题吗?
设备控制器中的方法:
def create
if Device.where('name' => params[:name])
respond_to do |format|
format.html { redirect_to :back, notice: 'Cannot create device. It already exists.' }
end
else
#Code that creates device
#respond_to code
end
end