har*_*ryg 5 php laravel-4 revisionable
在可修订包中,可以通过在模型上定义identifiableName()方法来获取相关模型的可识别名称 ,将字段设置为显示而不是id.例如'姓名'或'标题'.
是否可以与不相关的模型做类似的事情.所以说我得到了某个型号的所有修改版.例如
$revisions = Venturecraft\Revisionable\Revision::where('revisionable_type', 'post')->get();
Run Code Online (Sandbox Code Playgroud)
我怎样才能获得identifiableName的post对每个修订提出?
我已经可以获得post id了$revision->revisionable_id但是我似乎无法找到一种获取帖子名称的方法,而没有像Post::find($revision->revisionable_id)->name大量修订列表那样昂贵的东西.
小智 0
对于仍然遇到此问题的任何人。
我想你也许可以做这样的事情:
$revision->revisionable->identifiableName();
Run Code Online (Sandbox Code Playgroud)
对我来说效果很好,只需确保检查帖子是否已被删除,否则您将尝试从非对象获取属性。
例如:
if($revision->revisionable){
// Post exists
$revision->revisionable->identifiableName();
}else{
// Post doesn't exist
}
Run Code Online (Sandbox Code Playgroud)