# vbulletin5.rb スクリプトのインポート

**URL:** <https://meta.discourse.org/t/import-scripts-vbulletin5-rb/132531>\
**Category:** Self-hosting\
**Created:** [2019 年 11 月 4 日午後 1:17 UTC](https://meta.discourse.org/t/import-scripts-vbulletin5-rb/132531 "2019-11-04T13:17:03Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![INSTAR](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/instar/32/359540_2.png) [@INSTAR](https://meta.discourse.org/u/INSTAR)\
**Post date:** [2019 年 11 月 5 日午前 3:56 UTC](https://meta.discourse.org/t/import-scripts-vbulletin5-rb/132531/5 "2019-11-05T03:56:03Z")

</div>

インポート中にエラーメッセージは表示されません。`create_users` 関数が実行された際に、無効なユーザーのメールアドレスに対するいくつかの警告が出ただけです。しかし、最終的にはユーザーのインポートは成功しています。以下はログです（警告には顧客のメールアドレスが含まれていたため、削除しています）:

> <https://gist.github.com/mpolinowski/ae6447b5b95a412856c51aed6556ba84>

```plaintext
importing posts...
5 / 5 (100.0%) [290527 items/min]                                                            
importing attachments...   
20182 / 5 (403640.0%)

```

ここで、システムが私の 5 つのカテゴリを投稿として認識し、それらをインポートしているだけではないかと考えています。また、実際にインポートされなかったトピックに付随するすべての添付ファイルに対して、どのように処理すればよいか判断できていない可能性があります。

**免責事項** :

当初、インポートは失敗しました。提供された vBulletin データベースに `customprofilepic` というテーブルが存在しなかったため、空のテーブルをここに追加しました。

また、カスタムアバターも存在しませんでした。そのため、インポートスクリプトで参照されている `AVATAR_DIR` は、私が作成した空のフォルダです。これらのアセットを参照していた以下の行をインポートスクリプト内でコメントアウトしました:

```ruby
create_users(users, total: user_count, offset: offset) do |user|
        username = @htmlentities.decode(user["username"]).strip
        {
          id: user["userid"],
          name: username,
          username: username,
          email: user["email"].presence || fake_email,
          admin: user['admin'] == 1,
          password: user["password"],
          website: user["homepage"].strip,
          title: @htmlentities.decode(user["usertitle"]).strip,
          primary_group_id: group_id_from_imported_group_id(user["usergroupid"]),
          created_at: parse_timestamp(user["joindate"])
          # post_create_action: proc do |u|
          # @old_username_to_new_usernames[user["username"]] = u.username
          # import_profile_picture(user, u)
          # import_profile_background(user, u)
          # end
        }
      end

```

しかし、私の理解では、これらの変更はユーザー作成のみに影響を与えるはずです。そして、ユーザーは正常に作成されています。

以下は、私が使用している完全なインポートスクリプトです:

> <https://gist.github.com/mpolinowski/0ef4df888720ad4a92c4bf5edac2e076>

---

_[View the full topic](https://meta.discourse.org/t/import-scripts-vbulletin5-rb/132531)._
