public function getIndex()
{
// Get all the blog posts
/*$posts = Post::with(array(
'author' => function($query)
{
$query->withTrashed();
},
))->orderBy('created_at', 'DESC')->paginate(10);*/
$posts =Post::with(array('search' => function($query)
{
$query->where('title', 'like', '%Lorem ipsum%')->withTrashed();
}))->orderBy('created_at', 'DESC')->paginate(10);
// Show the page
return View::make('frontend/blog/index', compact('posts'));
}
Ceci est mon code dans le contrôleur. J'utilise un bundle de démarrage disponible sur GitHub.Laravel 4 où comme clause
J'ai créé ce modèle pour ce contrôleur
public function search()
{
return $this->belongsTo('Post', 'user_id');
}
Le problème est qu'il ne prend pas les résultats dont le titre contient « Lorem ipsum ». Il imprime simplement toutes les valeurs de la table.
Comment puis-je implémenter ceci pour obtenir uniquement les valeurs qui contiennent mon tag/mot-clé. Je fais cela pour ajouter l'option de recherche sur le site Laravel
Je l'ai déjà vu votre message dans une autre question. Cela me donne l'erreur – harishannam
Appel à la méthode indéfinie Illuminate \ Database \ Query \ Builder :: raw_where() – harishannam
Dans Laravel 4 la méthode est 'whereRaw' et non' raw_where'. Avoir un petit coup dans la source vous dira rapidement les noms des méthodes. –