プロジェクト

全般

プロフィール

バグ #907

完了

Modelの引数が足りていない

あひる 家鴨 さんが7年以上前に追加. 7年以上前に更新.

ステータス:
却下
優先度:
通常
対象バージョン:
プラグイン名:
core/lib/retriever.rb
ブランチ:
クラッシュする:

説明

core/lib/retriever.rb のModelの定義に引数として model_slug が与えられていますが、7行目の singleton_class の作成時に引数が渡されていません。
同様に、core/lib/retriever/model.rbRetriever::Model の呼び出しがされているが引数が与えられていないです。
与えていないことによる影響に関しては追えていませんが、ひとまず報告させていただきます。

toshi_a 初音 さんが7年以上前に更新

source:core/lib/retriever.rb で定義されているのはRetriever.Model(メソッド)、 source:core/lib/retriever/model.rb のほうはRetriever::Model(クラス)です。
Retriever.Model は、Retriever::Modelのサブクラスを扱うので、メソッド内部で利用しているのはRetriever::Modelなので、引数はありません。

こちらでは問題が発生しているようには見えないですが、コードを読んでいて気になったという話?

あひる 家鴨 さんが7年以上前に更新

はい
動作上問題ないですが、気になりました。
(チケットじゃない方がいいですかね)

toshi_a 初音 さんが7年以上前に更新

  • ステータス新規 から 却下 に変更

バグかどうかはこっちで切り分けるのでここでもいいけれど、実際にへんな挙動やクラッシュが観測されてないなら別の手段で聞いてくれたほうが良いかも。

調べづらいと思うから簡単に説明すると、Retriever.ModelというメソッドとRetriever::Modelというクラスが存在していて、Retriever.Model(arg)とか書くとメソッドが、Retriever::Modelと書くとクラス(が束縛された定数)が参照されるようになってる。
Rubyの標準ライブラリでも使われていて、例えばFloatクラスとFloatメソッド、ArrayクラスとArrayメソッドみたいな例がある。Retriever::Modelもこの応用の一つ。

他の形式にエクスポート: Atom PDF