概要

grantを正しくコントロールするためにmodel/page.jsroutes/page.jsに修正を加えた。
以前まではgrantがnullの場合に、そのままpage.grantをnullで保存していたが
model/page.jsapplyScopeでgrantを確認し、nullを書き換えることで、想定しているデータ保存ができるようになった.

想定する動作

  • 新規作成
  • 更新
  • 複製
  • 移動
  • 削除、元に戻す

のオペレーションで、意図するデータになるかどうか(Robo 3T で確認)

概要にある通り、各ステップにてgrantがnullで渡ってきたときにエラーが発生せずに、GRANT_PUBLIC (=1)で保存されることを確認。
また、GRANT_PUBLICの際にgroupidが存在することを防ぐのを確認する。

動作確認

grantにnull/undefinedを渡す

  • 新規作成

  • 更新

  • 複製

  • 移動

移動の時はgrantを取得していないため、故意的に操作してnullにするとそのままnullで移動される。
updateをすればnullは修正されるので問題はないと思われる。 エラーも発生していない。

  • 削除、元に戻す

削除の際にnullのページは1に書き換えられてtrashに移動される。 完全削除も元に戻すも問題なく動作した。

grantにnullを渡さない(通常状態)

  • 新規作成
  • 更新
  • 複製
  • 移動
  • 削除、元に戻す

通常通りの動作。データも想定通りの保存

grantに1、groupId に値を入れて渡す

しっかりとnullで保存されている。

grantが5の時でないと保存されないようになった!

結果

問題なし