我有两个文件,Laravel 5.5雄辩 - 文章::找到返回null
CommentTransformer
而且
ImageTransformer
在第一个文件,CommentTransformer
,我可以检索的文章吧属于这样做:
$article = Article::find($comment->article_id);
我在做我的ImageTransformer中的相同的东西,但它返回null
。即使不使用Article::find($image->article_id)
我使用Article::find(1)
我仍然得到一个空结果!
下面是完整的代码:
namespace App\Transformers;
use App\Article;
use App\User;
use App\Image;
use League\Fractal\TransformerAbstract;
class ImageTransformer extends TransformerAbstract
{
/**
* A Fractal transformer.
*
* @return array
*/
public function transform(Image $image)
{
$user = User::findOrFail($image->user_id);
$article = Article::find($image->article_id);
// $userArticle = User::find($article->user_id);
return [
'id' => (int) $image->id,
'original_filename' => $image->original_filename,
'filename' => $image->filename,
'size' => (int) $image->size,
'path' => url('/') . "/" . $image->path . '/' . $image->filename,
'posted_by_username' => $user->name,
'article' => $article //if I call $article->id it returns "Trying to get property of non-object" as it is, it returns null
];
}
}
这是响应:
{
"data": [
{
"id": 1,
"original_filename": "ptd.jpg",
"filename": "f11bbe288649e76ec3b694890160abf930601aed.jpeg",
"size": 103297,
"path": "http:\/\/192.168.1.85:1299\/uploads\/f11bbe288649e76ec3b694890160abf930601aed.jpeg",
"posted_by_username": "josh beck",
"article": null
}
]
}
你的问题是什么? –
为什么,哦,**为什么**它是返回null,当我100%确定有一个ID为1的文章。就像我提到很多次,即使我用'$ article = Article :: find (1)'我在ImageTransformer上得到null,但在CommentTransformer上没有**。这是一个足够好的问题吗? @GiacomoMasseroniChiaro – Rosenberg
我无法理解你的代码,对不起。我非常肯定$ article = Article :: find(1)行不会返回null。所以问题在别的地方。 –