バージョン選択

フォーラム

メニュー

オンライン状況

60 人のユーザが現在オンラインです。 (38 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 60
もっと...

サイト内検索

機能要望 > その他 > Jobエンティティの取得方法について

その他

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
ゲスト
投稿日時: 2016/9/9 12:27
対応状況: −−−
Jobエンティティの取得方法について
バージョン3.0.10です。
プラグインを開発していてJobエンティティを容易に取得できなかったので、取得方法について質問させて下さい。

本来であれば、Jobエンティティの取得は、

#code1
$job = $app->['eccube.repository.master.job']->findOneBy(
array(
'name' => '公務員'
)
);

といった記述で取得できると思いますが、これでは取得できません。

調査した結果、Eccube\ServiceProvider\EccubeServiceProvider->register($app)にて、Jobリポジトリの登録が行われていません。よって取得できないのだと推察しています。

仕方がないので、作成しているプラグインのServiceProvider->register($app)に、

#code2
$app['eccube.repository.master.job'] = $app->share(
function() use($app){
return $app['orm.em']->getRepository('Eccube\Entity\Master\Job');
}
);

と記述する事で、#code1の記述でJobエンティティを取得できるようになりました。

Jobエンティティを取得できるようになり、プラグインが意図した動作を行えるようになりましたが、いくつかの疑問が湧いてきました。以下に記します。

1.本来であれば、#code2のコードがEccube\ServiceProvider\EccubeServiceProvider->register($app)に記述されており、個別のプラグインで#code2を記述する必要はないのでは?

2.もしくは、Jobエンティティの取得は禁忌されている事象で、取得してはいけない、だからJobリポジトリが登録されていないのではないか?

1と2、もしくは別の理由(例えば別の取得方法がある等)があって#code1の記述ではJobエンティティの取得ができないのでしょうか?

御教授の程、宜しくお願い致します。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
 » Jobエンティティの取得方法について ゲスト 2016/9/9 12:27
     Re: Jobエンティティの取得方法について red 2016/9/9 12:56
       Re: Jobエンティティの取得方法について ゲスト 2016/9/9 14:09

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,083名です
総投稿数は110,032件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1649
8
red
1570
9
mcontact
1297
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.