레일즈 콘솔에서 데이터베이스의 관계형 테이블 UserRole
에 어떻게 액세스합니까?레일 콘솔에서 관계형 테이블에 액세스하는 방법
스키마 :
ActiveRecord::Schema.define(version: 20140709163149) do
create_table "users", force: true do |t|
t.string "stuff"
...
t.datetime "created_at"
t.datetime "updated_at"
end
create_table "roles", force: true do |t|
t.string "label"
...
t.datetime "created_at"
t.datetime "updated_at"
end
create_table "user_roles", force: true do |t|
t.integer "user_id"
t.integer "role_id"
...
t.datetime "created_at"
t.datetime "updated_at"
end
add_index "user_roles", ["role_id"], name: "index_user_roles_on_role_id"
add_index "user_roles", ["user_id"], name: "index_user_roles_on_user_id"
레일 콘솔에서, 나는 User.all()
을하고 모든 사용자를 얻을, 나는 Role.all()
할 수 있지만 어떻게 관계 테이블 user_role
에 액세스 할 수 있습니까? 궁극적으로 데이터베이스를 시드 할 수 있습니다. 내가 UserRole.all()
하려고하면
, 나는 다음과 같은 얻을 :
NameError: uninitialized constant UserRole
from (irb):7
from /Users/dejanew/.rvm/gems/[email protected]/gems/railties-4.1.1/lib/rails/commands/console.rb:90:in `start'
from /Users/dejanew/.rvm/gems/[email protected]/gems/railties-4.1.1/lib/rails/commands/console.rb:9:in `start'
from /Users/dejanew/.rvm/gems/[email protected]/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:69:in `console'
from /Users/dejanew/.rvm/gems/[email protected]/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
from /Users/dejanew/.rvm/gems/[email protected]/gems/railties-4.1.1/lib/rails/commands.rb:17:in `<top (required)>'
from /Users/dejanew/Dropbox/dev/SDF/bin/rails:8:in `<top (required)>'
from /Users/dejanew/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Users/dejanew/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from -e:1:in `<main>'
단일 테이블 상속에 대한 메모 주셔서 감사합니다. 마이 그 레이션에서 수정했습니다. –
아!이 '스캐 폴드'가 사용되지 않아서 왜 생성되지 않았습니까? 프레임 워크를 완전히 이해할 때까지는 바로 가기를 사용하는 것이 정말 싫어합니다! –