# プラグインが管理画面で奇妙なエラーを引き起こす - ID なしでプラグインをハイドレートできない

**URL:** https://meta.discourse.org/t/plugin-causes-odd-error-on-admin-pages-cant-hydrate-plugin-without-id/131298
**Category:** Development
**Created:** [2019 年 10 月 17 日午後 8:24 UTC](https://meta.discourse.org/t/plugin-causes-odd-error-on-admin-pages-cant-hydrate-plugin-without-id/131298 "2019-10-17T20:24:24Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Oliver\_Walker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/oliver_walker/32/155432_2.png) [@Oliver\_Walker](https://meta.discourse.org/u/Oliver_Walker)
#### Post date: [2019 年 10 月 17 日午後 8:24 UTC](https://meta.discourse.org/t/plugin-causes-odd-error-on-admin-pages-cant-hydrate-plugin-without-id/131298/1 "2019-10-17T20:24:24Z")

</div>

こんにちは、

プラグインを作成している際に、以下のエラーが発生しました：

```
Error: Can't hydrate plugin without an `id`
    at Class._hydrate (discourse/models/store:330)
    at eval (discourse/models/store:222)
    at Array.map (<anonymous>)
    at Class._resultSet (discourse/models/store:221)
    at eval (discourse/models/store:80)
    at tryCatcher (ember:61303)
    at invokeCallback (ember:61476)
    at publish (ember:61462)
    at eval (ember:55822)
    at invoke (ember:54023)

```

このエラーで言及されている「id」とは、具体的に何を指すのかご存知の方はいらっしゃいますか？  
このエラーは、/admin にアクセスしてプラグインページに移動した際にのみ、コンソールに表示されます。  
このエラーをデバッグするために、他にどのような情報が必要でしょうか？

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [2019 年 10 月 17 日午後 8:30 UTC](https://meta.discourse.org/t/plugin-causes-odd-error-on-admin-pages-cant-hydrate-plugin-without-id/131298/2 "2019-10-17T20:30:25Z")

</div>

インストールしたプラグインは何ですか？

---

<div class="post-metadata">

### Author: ![Oliver\_Walker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/oliver_walker/32/155432_2.png) [@Oliver\_Walker](https://meta.discourse.org/u/Oliver_Walker)
#### Post date: [2019 年 10 月 17 日午後 8:31 UTC](https://meta.discourse.org/t/plugin-causes-odd-error-on-admin-pages-cant-hydrate-plugin-without-id/131298/3 "2019-10-17T20:31:44Z")

</div>

現在開発中のものです。オープンソース化の許可が得られ次第、リンクを投稿します。

---

<div class="post-metadata">

### Author: ![Oliver\_Walker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/oliver_walker/32/155432_2.png) [@Oliver\_Walker](https://meta.discourse.org/u/Oliver_Walker)
#### Post date: [2019 年 10 月 18 日午後 2:00 UTC](https://meta.discourse.org/t/plugin-causes-odd-error-on-admin-pages-cant-hydrate-plugin-without-id/131298/4 "2019-10-18T14:00:08Z")

</div>

解決しました。/admin/plugins.json に移動すると、通常プラグイン名で設定されるプラグイン ID が未設定であることが確認できました。

これらのフィールドは、plugin.rb ファイル内にコメントセクションを記述することで設定されることが判明しました。そのため、以下のコードを追加して修正しました。

```
# frozen_string_literal: true
# name: example
# about: example about
# version: 1.0
# authors: example 
# url: example

```

ファイル内のコメントを必須とする場合は、どこかに明確にドキュメント化されるべきだと感じます。そのため、この解決策をここに残しておきます。
