使用 Laravel 架构生成器返回列约束


Return column constraints using Laravel Schema Builder

我可以使用以下方法返回数据库表中的列数组;

$column_names = DB::getSchemaBuilder()->getColumnListing('tablename');

但是有没有一种方法可以返回每个特定列上的接受值?例如,我有很多enum列,我想返回这些列(可能在多维数组中),以便我可以在单元测试中使用它。

getDoctrineColumn就是

你想要的。您可以简单地使用以下代码来获取所需的内容:

$column_names = DB::getSchemaBuilder()->getColumnListing('tablename');
foreach($column_names as $c){
    $type = DB::connection()->getDoctrineColumn('tablename', $c)->getType()->getName();
    // do anything you want with your desired type
}