Я довольно новичок в Ruby on Rails и уже довольно давно застрял в этой ошибке. Я надеюсь, что кто-то может дать мне полезную информацию, чтобы исправить эту ошибку. У меня такое чувство, что я пропускаю что-то тривиальное. Во всяком случае, я включил ниже своего кода, который рисует ошибку (то есть в представлении), а также мой код, который находится в моем контроллере. Хотя я провел свое исследование перед публикацией здесь, мне, возможно, придется поместить мою переменную экземпляра в мой контроллер, однако я не уверен, как этот процесс идет, а затем как вызвать его из моего представления. Буду признателен за любую помощь! Заранее спасибо :)Ruby on Rails - NameError '@' не разрешено как имя переменной экземпляра
Я получаю ошибку:
NameError in Search#indx
'@' is not allowed as an instance variable name
Вот моя строка кода, который рисует ошибку, на мой взгляд (apps/views/search/index.html.erb
):
<% @search = instance_variable_get("\@#{params[:model].to_s.downcase.pluralize}")%>
Вот мой код в моем контроллере (apps/controllers/search_controller.rb
):
class SearchController < ApplicationController
def index
@containers = Container.search(params[:q])
@cpus = Cpu.search(params[:q])
@disks = Disk.search(params[:q])
@firmwares = Firmware.search(params[:q])
@hardwares = Hardware.search(params[:q])
@hosts = Host.search(params[:q])
@interfaces = Interface.search(params[:q])
@lans = Lan.search(params[:q])
@licenses = License.search(params[:q])
@rams = Memory.search(params[:q])
@networks = Network.search(params[:q])
@products = Product.search(params[:q])
@roles = Role.search(params[:q])
@sites = Site.search(params[:q])
@vmpools = Vmpool.search(params[:q])
@trackings = Tracking.search(params[:q])
end
end
Я считаю, что вам не нужно скрывать знак at: '' @ # {...} "' – August
@August - Пробовал, что ничего не изменил. – Louie
Какой параметр в этот момент? –