Проблема соглашения об именах моделей контроллеров Rails - PullRequest
2 голосов
/ 29 августа 2011

Я новичок в Ruby on Rails и пытаюсь настроить приложение ROR на основе оракула,

Имя таблицы БД: booker.live_edi_vendors

Мой контроллер определен по следующему пути:

../rails-root/app/controller/live_edi_vendors_controller.rb

И содержание:

 class LiveEdiVendorsController < ApplicationController
    def index
      @name = request.env['REMOTE_USER']
    end
 end

Я также создал представление для этого контроллера, которое находится в папке ../rails-root/app/views/live_edi_vendors.

И я поместил некоторый код в index.html.erb внутри этого каталога.

Теперь мой файл модели ../rails-root/app/model/live_edi_vendors.rb

и содержимое в этом файле:

class LiveEdiVendors < ActiveRecord::Base
      set_primary_key "live_edi_vendor_id"
      set_table_name "booker.live_edi_vendors"

      def LiveEdiVendors.find_by_legal_entity_id(legal_entity_id)
          return "asdadsad" #testing (temporary)
      end
  end

Теперь

Когда я пытаюсь получить доступ к пути <website host>/live_edi_vendors из браузера, он говорит

uninitialized constant LiveEdiVendorsController

Мой routes.rb файл содержит следующую строку для маршрутизации запроса:

map.vendorlivelist 'live_edi_vendors/:action', :controller => 'live_edi_vendors'

Пожалуйста, помогите мне, я много боролся с этими соглашениями об именах в наши дни.

Я также размещаю здесь свою структуру каталогов:

app
|-- controllers
|   `-- live_edi_vendors_controller.rb
|-- model
|   `-- live_edi_vendors.rb
`-- views
    |-- layouts
    `-- live_edi_vendors
        `-- index.html.erb

Спасибо

1 Ответ

3 голосов
/ 29 августа 2011

хмм Название модели всегда в единственном числе попробуйте

class LiveEdiVendor < ActiveRecord::Base
  ....
end

и имя файла модели тоже

live_edi_vendor.rb
...