这是我的模特
namespace App\Models\Invitation;
use App\Models\Model;
class SendtoType extends Model
{
}
当我从SendtoType获取数据时,它返回空或null,但我确定sendto_types表中包含数据
$types = SendtoType::all();
dd($types); // return empty collection
$types = SendtoType::find(1);
dd($types);// null
这是在我运行php artisan命令:reset_table sendto_types命令之后发生的。
我清除了缓存,但无法正常工作。
答案 0 :(得分:1)
谢谢大家,我发现了我的错误:
我为表的delete_at列设置了时间戳记,但是忘记设置不为null,因此当我添加数据时它也填充了delete_at列。
这就是为什么雄辩的子句返回空的原因。
如此愚蠢的错误!
答案 1 :(得分:0)
您可以在模型类中使用实际表名在数据库中添加protected $table = 'sendto_types';
。
class SendtoType extends Model
{
protected $table = 'sendto_types';
}
答案 2 :(得分:0)
命令command:reset_table
不是内置命令,因此您需要查看源代码以查看其功能,但是根据其名称,我假设该命令清空了您的表。< / p>
在这种情况下,您的表为空,因此您的查询将不返回任何结果。
答案 3 :(得分:0)
使用查询生成器在laravel中获取数据时。您应该使用get()
或first()
或...
$types = SendtoType::find(1)->get();