获取模型" identifiableName()"来自可修改的

时间:2014-11-07 17:00:24

标签: php laravel-4 revisionable

revisionable package中,可以通过在模型上定义identifiableName()方法来获取相关模型的可识别名称,将字段设置为显示而不是id。例如。 '名称'或者'标题'。

是否可以与不相关的模型做类似的事情。所以说我得到了某个型号的所有修改版。 E.g。

$revisions = Venturecraft\Revisionable\Revision::where('revisionable_type', 'post')->get();

如何获得每次修订的identifiableName post

我已经可以使用$revision->revisionable_id获取帖子ID但我似乎无法找到一种方法来获取帖子名称,而不需要像Post::find($revision->revisionable_id)->name这样的内容,这对于大量修订列表来说是昂贵的

1 个答案:

答案 0 :(得分:0)

对于仍有此问题的人。

我认为你可能会做类似的事情:

$revision->revisionable->identifiableName();

对我来说很好,只要务必检查帖子是否已被删除,否则您将尝试从非对象获取属性。

例如:

if($revision->revisionable){
   // Post exists
   $revision->revisionable->identifiableName();
}else{
   // Post doesn't exist
}