bm-sms/daimon-news

記事の public_id を入力可能にする

Closed this issue · 8 comments

記事の一括移行後に新規登録された記事については、現状の public_id が連番で付与される仕様だと番号が合わなくなる懸念があるため。

本対応は、移行期間のみの暫定仕様になる。
4/6 に移行が終わったら、元に戻す想定。

仕様検討

  • public_id は、データとしては必須だが、記事編集画面からの入力を必須にするかどうか。
    • 入力必須にする
    • 入力任意にして、入力がなかったら、最大値 + 1 を自動的に設定する
      • →編集担当に確認
  • 他媒体はどうするか
    • →public_id の入力項目を表示しない(意識させない)
  • すでに存在する public_id の場合は、重複エラーとする

他媒体はどうするか

媒体ごとに処理を切り替えるもの大変なので、ひとまず全部表示しておいて運用でカバー(!)するのがお安そうに感じました。

okkez commented

必須にしてしまうと、他の媒体で辛いので任意にしたいですね。

okkez commented

すでに存在する public_id の場合は、重複エラーとする

public_idはサイトごとに独立しているので、注意が必要です。

public_id と site_id の掛け合わせで重複チェックですね!
媒体ごとの処理はなくそうか。。

okkez commented

フィーチャーフラグは避けてきたので、媒体ごとの処理はやらない方向にしたいです。

public_id と site_id の掛け合わせで重複チェックですね!

ですね!
いまいまだとユニークインデックスが貼らさっているので、データの整合性という面では気にしなくてよさそうです。 https://github.com/bm-sms/daimon-news-multi-tenant/blob/master/db/schema.rb#L125

とはいえ、重複して保存しようとするとエラー画面が表示されてしまうので、validation を追加すれば完了しそうです!

Closed by #411
Thanks @ryota-sasabe 🐳