首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优化拉拉维尔的口才?

优化拉拉维尔的口才?
EN

Stack Overflow用户
提问于 2019-04-03 06:29:49
回答 1查看 119关注 0票数 0

我对我的laravel项目有一个有用的疑问。是否有优化或缩短此代码的方法?

代码语言:javascript
复制
                $transaction = DB::connection('mysql')->table('pwn_transaction')
                        ->join('pwn_transaction_has_details', 'pwn_transaction.ticket_number', '=', 'pwn_transaction_has_details.pwn_transaction_ticket_number')
                        ->join('pwn_transaction_details', 'pwn_transaction_has_details.pwn_transaction_details_id',  '=', 'pwn_transaction_details.id')
                        ->join('pwn_transaction_has_transaction_items', 'pwn_transaction.ticket_number', '=', 'pwn_transaction_has_transaction_items.pwn_transaction_ticket_number')
                        ->join('pwn_branch_has_transaction', 'pwn_transaction.ticket_number', '=', 'pwn_branch_has_transaction.pwn_transaction_ticket_number')

                        ->join('pwn_transaction_has_customers', 'pwn_transaction.ticket_number', '=', 'pwn_transaction_has_customers.pwn_transaction_ticket_number')
                        ->join('pwn_customers', 'pwn_transaction_has_customers.pwn_customers_id', '=', 'pwn_customers.id')
                        ->groupBy('ticket_number')
                        ->get();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-03 06:41:38

首先,您需要阅读拉勒维尔雄辩

例如:控制器中带有Transaction模型的简单代码

代码语言:javascript
复制
$transaction = Transaction::get();

您可以在模型中使用雄辩关系

事务模型

代码语言:javascript
复制
public function items()
{
   return $this->hasOne(TransactionItem::class); //based on your model and relationship
}

用关系约束期望载荷检索

代码语言:javascript
复制
$transaction = Transaction::with('items)->get();

Laravel使用mysql作为默认连接或基于config/database.php文件

如果您想使用多个数据库,您可以使用类似的方法。

Transaction模型中定义下面一行

代码语言:javascript
复制
protected $connection = 'your-connection-name';

基于你的评论

确保在Transaction模型中定义正确的关系

代码语言:javascript
复制
Transaction::with('hasDetails', 'details', 'branch', 'hasCustomers', 'customer')
            ->groupBy('ticket_number')
            ->where('ticket_number', $request->pawnTicket) //assume ticket_number column is inside the transactions table
            ->get();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55488449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档