php - Laravel - 从模型动态构建路线

标签 php mysql laravel-5 model

我正在尝试从以下模型构建路线,代码如下。

$data = \App\Models\ModelName::all();

    if(!empty($data) && $data->count() >= 1)
    {
        foreach($data as $d)
        {
            Route::prefix('/'.$d['data_field'])->name($d['data_field'])->group(function(){
                Route::get('/', ucfirst($d['data_field']).'Controller@index');                  
            });
        }
    }

我不断收到 $d 未定义的错误消息。有没有办法动态构建路由?

最佳答案

您需要将 $d 传递到闭包中,因为它不存在于匿名函数的范围内:

Route::prefix('/'.$d['data_field'])
    ->name($d['data_field'])->group(function() use ($d) {
           Route::get('/', ucfirst($d['data_field']).'Controller@index');                  
    });

关于php - Laravel - 从模型动态构建路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46083640/

相关文章:

php - 非常简单的 php 表单 - 一个字段未提交

php - JMS 序列化程序无法序列化 : cannot access private property

mysql - 需要帮助编写 SQL 语句

laravel - laravel 中的 Auth::login($user) 无法登录用户

php - 如何通过管道将电子邮件发送到我的 Laravel 5 应用程序

php - "Personal Home Page"和 "PHP Hypertext Preprocessor"是什么 PHP?

PHP MySQL 日期大于

php - mysql_query() 非常奇怪地失败

php - 插入值而不设置主键

email - 在 Laravel 5.5 中使用 Mailable 而不是 MailMessage 来发送密码重置电子邮件