Моделирование мультитенантного приложения для рельсов, чтобы его было легко обслуживать

Если вы хотите сделать замену ROT13 вручную или в голове - вы можете проверить это, потому что 13 * 2 = 26 (число букв английского алфавита), это по существу обмен:

a <-> n
b <-> o
c <-> p
...
m <-> z

A <-> N
B <-> O
C <-> P
...
M <-> Z 

Vs lbh cenpgvfr ybat rabhtu, lbh'yy riraghnyyl znfgre gur Mra bs EBG-13 nytbevguz naq ernq guvf Xyvatba ybbxvat grkgf jvgubhg pbzchgre uryc.

0
задан Lee McAlilly 29 March 2019 в 13:38
поделиться

1 ответ

Итак, я не уверен, насколько хорошо это решение будет работать, так как приложение развивается с течением времени, но я остановился на этом потоке пока, если это поможет кому-то еще с подобной проблемой:

    [ 119] Пользователь регистрируется с помощью разрешения на регистрацию в / регистрации
  1. После регистрации они перенаправляются на новые / новые учетные записи, если они не создали учетную запись
  2. Учетные записи belong_to Пользователь и каждый пользователь has_one Учетная запись
  3. Все остальное, например, Продукты, belong_to Учетная запись
  4. Роли пользователей устанавливаются в зависимости от того, как вы регистрируетесь. Поэтому, если вы регистрируетесь с домашней страницы, вы по умолчанию являетесь владельцем учетной записи.
  5. Контроль доступа определяется ролями пользователей и Pundit.
  6. Данные разобраны, потому что все остальное, как продукты, belong_to Учетная запись

Вот эскиз отношений: enter image description here [ 1118]

Вот код:

accounts_controller.rb

# POST /accounts
  def create
    @user    = current_user
    @account = @user.build_account(account_params)

    respond_to do |format|
      if @account.save
        format.html { redirect_to @account, notice: 'Account was successfully created.' }
      else
        format.html { render :new }
      end
    end
  end


  def account_params
    params.require(:account).permit(:company_name, :user_id)
  end

models / account.rb

class Account < ApplicationRecord
  belongs_to :user
end

models / user.rb

[ 112]
0
ответ дан Lee McAlilly 29 March 2019 в 13:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: