【发布时间】:2015-08-15 16:35:37
【问题描述】:
第一个问题:
为什么Fluent 会返回array:
return DB::connection('mysql')->table('cards')
->where('setCode', '=', $setcode)
->get();
而Eloquent 返回object:
return Card::where('setCode', '=', $setcode)
->get();
据我所知,数据本身看起来完全一样。
第二个问题:
以下代码在Fluent:
DB::table('auth.users_deck_overview as deckOverviewDB')
->leftJoin('auth.users_deck_cards as deckCardsDB', 'deckOverviewDB.deck_uid', '=', 'deckCardsDB.deck_uid')
->leftJoin('mtg_cards.cards as cardsDB', 'deckCardsDB.card_uid', '=', 'cardsDB.uid')
->select('cardsDB.name', 'deckCardsDB.card_quantity', 'cardsDB.manaCost', 'cardsDB.colors', 'cardsDB.cmc')
->where('deckOverviewDB.username', '=', $user->username)
->where('deckOverviewDB.deck_uid', '=', $deckUid)
->where('deckCardsDB.board', '=', 0)
->where('cardsDB.cmc', '!=', '')
->get();
假设users_deck_overview、users_deck_cards、cards 模型分别为DeckOverview、DeckCard 和Card,我将如何将上述更改为Eloquent?
【问题讨论】:
标签: php mysql laravel eloquent fluent