ruby-on-rails - 用户注册/登录后创建团队或加入团队
问题描述
我目前正在开发一个 Ruby on Rails 应用程序,其中设计用户在成功登录/注册后可以创建团队或加入团队。创建团队的用户将成为所有者并且不能属于任何其他团队,决定加入团队的用户将看到所有已创建并能够加入的团队。我在理解为此需要使用的关系时遇到了很多麻烦
用户.rb
class User < ApplicationRecord
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :validatable, :confirmable
validates_presence_of :phone, :city, :state, :street, :zip, presence: true, on: :create
has_one :team
end
架构.rb
create_table "teams", force: :cascade do |t|
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "team_name"
end
create_table "users", force: :cascade do |t|
t.string "email", default: "", null: false
t.string "encrypted_password", default: "", null: false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "confirmation_token"
t.datetime "confirmed_at"
t.datetime "confirmation_sent_at"
t.string "firstname"
t.index ["confirmation_token"], name: "index_users_on_confirmation_token", unique: true
t.index ["email"], name: "index_users_on_email", unique: true
t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
end
团队.rb
class Team < ApplicationRecord
belongs_to :user, class_name: 'User'
end
路线.rb
devise_for :users, path: 'users' , controllers: { sessions: "users/sessions", confirmations: 'users/confirmations', registrations: 'users/registrations' }
我是否使用了正确的方法?
解决方案
推荐阅读
- node.js - node.js 中未定义 process.argv
- material-ui - 如何在 jss 中引用子组件中的规则名称
- r - 为什么使用 facet-grid 和 aes() 分隔组会产生不同的图形?
- excel - 在字符和总和之间搜索字符串的行
- algorithm - 什么是渐近运行时间
- jquery - 按输入值搜索表
- c - 如何在连续写入自然数的数字中获取 x(未知)数字:123456789101112
- javascript - 单元测试 Vue 组件 - 玩笑设置 - 意外的标识符错误
- apache - 本地主机工作,但 ip 给 timout
- testing - 我应该在 MQ/服务架构中测试整个业务流程吗?