繁体   English   中英

如何使用Laravel DB从动态创建的表中获取数据?

[英]How to use Laravel DB to fetch data from dynamically created tables?

我已经在Laravel 5.3中创建了一个应用程序,由于该应用程序的性质,我需要创建一个特定于每个注册用户的表。 为此,我使用了homeController(在成功注册后将用户重定向到它),并且在其中使用了以下代码:

$user_id = Auth::user()->id;
$user_name = Auth::user()->name;
$table_name = $user_name . '_' . $user_id;

if (Schema::hasTable($table_name))
{   
    $specs = DB::table($table_name)->select('select * from ' . $table_name);
    return view('home')->with('rvalue', $specs);
}else{      
    Schema::connection('mysql')->create($table_name, function ($table){
        $value = 0;
        $table->string('address')->default($value);
        $table->string('phone')->default($value);
        $table->string('name')->default($value);
    });
}


截至home.blade.php中的代码,我添加了:

foreach ($rvalue as $value)
{
    var_dump($value);
}

我的问题是,尽管表和表中的列已创建并存在于数据库中,但我仍然不知道如何检索在创建列时分配给列的默认值,以及如何在其中发送和显示它们风景。
如果您能告诉我如何使它工作,我将非常感谢您。

您对数据库的查询必须是这样的:

DB::table($table_name)->select('*')->get();

用于指定选定字段的选择方法,而不是用于自身查询。

阅读官方文档以获取更多有用的方法: https : //laravel.com/docs/5.3/queries

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM