ユーザ削除のAPIについて

ユーザ削除のAPIについて

- nob noby の投稿
返信数: 4

下記moodleのAPI仕様の調査をしており、ご存知でしたら教えていただきたいです。

https://docs.moodle.org/dev/Talk:Web_service_API_functions


質問:ユーザ(生徒)の関連情報(コース登録や成績)を消さずに

   ユーザ削除APIは実行出来るか


ユーザ削除で実行するAPIは「core_user_delete_users」だと思うのですが

その際、削除するユーザのコース登録状況や成績などの関連情報を

ユーザ削除APIを実行する前に削除する必要はありますでしょうか。

もしくは、moodleのユーザテーブルが参照制約を持っているか、教えていただきたいです。


何卒、よろしくお願いいたします。

nob noby への返信

Re: ユーザ削除のAPIについて

- Mitsuhiro Yoshida の投稿
画像 Developers 画像 Particularly helpful Moodlers 画像 Translators

> その際、削除するユーザのコース登録状況や成績などの関連情報をユーザ削除APIを実行する前に削除する必要はありますでしょうか。

いいえ、「ユーザのコース登録状況や成績などの関連情報」を削除する必要はありません。

> もしくは、moodleのユーザテーブルが参照制約を持っているか、教えていただきたいです。

Moodle 3.5.9+ (Build: 20191122) のコードを確認しましたところ、インストール時のデータベース作成で参照制約 (REFERENCES) を定義している箇所は見当たりません。

すでにご覧になったかもしれませんが、以下の投稿がAPIを使ったユーザ削除の参考になるかと思います。

[Moodle in English: What's the right way to delete users through the API?]
https://moodle.org/mod/forum/discuss.php?d=283954


Mitsuhiro Yoshida への返信

Re: ユーザ削除のAPIについて

- nob noby の投稿
Mitsuhiro Yoshidaさま

早速のご返信いただきありがとうございました。大変助かりましたm(__)m

> [Moodle in English: What's the right way to delete users through the API?]
> https://moodle.org/mod/forum/discuss.php?d=283954

core_user_delete_usersを実行した場合は「$updateuser->deleted = 1;」にアップデートされ
論理削除されるのですね。
nob noby への返信

Re: ユーザ削除のAPIについて

- Mitsuhiro Yoshida の投稿
画像 Developers 画像 Particularly helpful Moodlers 画像 Translators
> core_user_delete_usersを実行した場合は「$updateuser->deleted = 1;」にアップデートされ論理削除されるのですね。

はい、そうです。