У меня есть объект модели пользователя, предположим,
class User < ActiveRecord::Base
has_many :permissions
end
и
class Permission > ActiveRecord::Base
attr_accessible :user_id, :permission_name
Очевидно, что на столе есть идентификатор, но мы действительно не заинтересованы в этом столбце. Настоящий первичный ключ - user_id +missions_name. Иностранный ключ по умолчанию: user_id
Мы пытаемся создать флажки для каждого разрешения и не можем сделать это в цикле ...
Может кто-нибудь объяснить, как rails создает имя для флажка:
user.permissions where permission.permission_name == "some string"
или как мы могли бы вызвать метод check_box_tag в файле .erb так, чтобы он мог отображать определенный флажок, скажем, где аргумент_имя 'ted'?
В этот момент я немного отчаялся. Я нашел много примеров, в которых предполагается, что первичным ключом является поле 'id', и что я просто хочу просмотреть список разрешений, но нигде не вижу примера без цикла и не использую идентификатор в качестве первичного ключа.
спасибо заранее!
edit: я понимаю, что в таблице, где есть много разрешений для многих пользователей, само имя_представления недопустимо в качестве первичного ключа, но для наших целей в форме в случае нового пользователя user_id не существует и для каждого пользователя может быть только один из каждого типа access_name ... может быть, primary_key - это даже не то, что нам нужно в этом случае?