第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Laravel 搜索中顯示來自多個不同表的數(shù)據(jù)

在 Laravel 搜索中顯示來自多個不同表的數(shù)據(jù)

PHP
HUH函數(shù) 2022-10-14 16:01:47
我一直在為我的庫應(yīng)用程序開發(fā)搜索功能,這是我的第一個 Laravel 項(xiàng)目,所以我有點(diǎn)掙扎。我終于找到了搜索功能,我可以在其中按書名搜索一本書,但是,我無法顯示搜索中不在該表中的任何數(shù)據(jù)。如果我運(yùn)行搜索,我會收到以下錯誤消息:Facade\Ignition\Exceptions\ViewExceptionUndefined property: stdClass::$authors (View: /Users/krisz/code/project/resources/views/books/index.blade.php)我在“書籍”和“作者”之間創(chuàng)建了一個數(shù)據(jù)透視表,如果我只想在我的索引頁面上顯示數(shù)據(jù)而不進(jìn)行搜索,它可以工作,但搜索后我無法讓它工作。此外,如果我從“books”表之外的 index.blade.php 中刪除所有數(shù)據(jù),則搜索工作正常。你能幫我解決這個問題嗎?圖書控制器:<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;use App\Book;use App\Language;use App\Genre;use App\Author;use App\Publisher;use App\User;use Illuminate\Support\Facades\DB;class BookController extends Controller{     public function index(Request $request)    {        $books = Book::with('language')->get();        $books = Book::with('user')->get();        $languages = Language::all();        $genres = Genre::all();        $publishers = Publisher::all();        $users = User::all();        $authors = Author::all();        return view('books/index', compact('books','languages','genres','publishers','users'));    }    public function search(Request $request)    {        $authors = Author::all();        $books = Book::with('language')->get();        $books = Book::with('user')->get();        $languages = Language::all();        $genres = Genre::all();        $publishers = Publisher::all();        $users = User::all();        $search = $request->get('search');        $books = DB::table('books')            ->where('title','like','%' .$search. '%')            ->paginate(5);        return view('books/index')             ->with(compact('books','languages','genres','authors','publishers','users'));    }}
查看完整描述

1 回答

?
青春有我

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個贊

首先,您只是在這里覆蓋自己:

$books = Book::with('language')->get();
$books = Book::with('user')->get();

我懷疑你想要兩個languageand user,你可能想要authors, 以及你試圖在視圖中獲取的其他一些數(shù)據(jù)?這稱為急切加載,它在多個關(guān)系上完成,如下所示:

$books = Book::with(['language', 'user', 'authors', 'publishers', 'genres'])->get();

不確定您遇到的錯誤,$book應(yīng)該是App\Bookand not的一個實(shí)例,stdClass即使沒有急切加載,關(guān)系也應(yīng)該仍然可用。我懷疑您沒有顯示某些代碼,或者您的模型定義不正確。


查看完整回答
反對 回復(fù) 2022-10-14
  • 1 回答
  • 0 關(guān)注
  • 114 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號