我在 View 中获取了此代码来获取特定表的列
$columns = \Schema::getColumnListing('posts')
所以我做了一个 foreach
循环来获取所有列的名称。但现在我正在制作一个 CRUD 生成器,因此我需要列类型来知道我将为其制作哪种类型的字段。上面的代码只是给了我列的名称。我怎样才能获得列类型?
更新:
我搜索了包含 getColumnListing 方法的文件,发现了一个名为 getColumnType($table, $column)
的方法。它返回一个字符串。
我尝试使用它,但出现此错误:
MySqlConnection.php 第 64 行中的 FatalErrorException:
未找到“Doctrine\DBAL\Driver\PDOMySql\Driver”类
最佳答案
我在项目中搜索了 getColumnListing
方法,并在名为 Builder.php
的文件和 getColumnListing
的上方找到了它我找到了一个名为 getColumnType($table, $column)
我尝试使用以下代码行来使用 getColumnType
方法:
$type =\Schema::getColumnType('{{collection}}s', $col);
但是我收到了这个错误:FatalErrorException in MySqlConnection.php line 64:
找不到类“Doctrine\DBAL\Driver\PDOMySql\Driver”
这是因为缺少一个名为 doctrine/dbal
的包,laravel 5.2 中不再包含该包
因此,我运行此命令 composer requiredoctrine/dbal
并且不再出现任何错误。
感谢 @pari 告诉我安装 doctrin/dbal。
关于php - 如何在 Laravel 5.2 中获取列类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39065325/