Heim > Backend-Entwicklung > PHP-Tutorial > 请教个 LaravelAutoPresenter 包 出现的问题

请教个 LaravelAutoPresenter 包 出现的问题

WBOY
Freigeben: 2016-06-06 20:23:23
Original
1311 Leute haben es durchsucht

直接上图

请教个 LaravelAutoPresenter 包 出现的问题

上面的 $article 等于 php Article::find(1)

ArticleModel 和 UserModel 在model关联关系

ArticleModel
请教个 LaravelAutoPresenter 包 出现的问题

UserPresenter

请教个 LaravelAutoPresenter 包 出现的问题

然后在view里没法这样使用

请教个 LaravelAutoPresenter 包 出现的问题

<code class="php">//这种可以调用,
{{ $article->images() }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
<code class="php">//这种不可以调用,
{{ $article->author->byName() }}</code>
Nach dem Login kopieren
Nach dem Login kopieren

还有个奇怪的现象...

请教个 LaravelAutoPresenter 包 出现的问题

回复内容:

直接上图

请教个 LaravelAutoPresenter 包 出现的问题

上面的 $article 等于 php Article::find(1)

ArticleModel 和 UserModel 在model关联关系

ArticleModel
请教个 LaravelAutoPresenter 包 出现的问题

UserPresenter

请教个 LaravelAutoPresenter 包 出现的问题

然后在view里没法这样使用

请教个 LaravelAutoPresenter 包 出现的问题

<code class="php">//这种可以调用,
{{ $article->images() }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
<code class="php">//这种不可以调用,
{{ $article->author->byName() }}</code>
Nach dem Login kopieren
Nach dem Login kopieren

还有个奇怪的现象...

请教个 LaravelAutoPresenter 包 出现的问题

在具体的 Presenter 中你需要使用

<code> $this->getWrappedObject() </code>
Nach dem Login kopieren

来获取当前 Presenter 绑定的 Model,因此你这里的代码需要改为:

<code>public function byName()
{
    $this->getWrappedObject()->author()->nickName;
}</code>
Nach dem Login kopieren

这样你就可以直接在 blade 模板中直接使用{{ $article->byName }}

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage