我知道您可以使用以下命令获取查询的插入ID:
$query->id
但有没有办法从查询中恢复数据?
例如,我希望将返回的内容返回给用户并将其输出到我的页面上。如果我只是返回发送用于插入的数据,那么它将不会被旧化并可能导致问题。
有办法做到这一点吗?
或者我是否需要再进行一次查询,或者只是手动清理数据?
答案 0 :(得分:0)
数据库不会返回插入的数据;它们返回一个状态,指示是否已成功插入。因此,您无法从$query
恢复数据。
那说......你刚插入数据!您已经可以在程序中访问它了。根据您的需要,这可能就足够了。或者它可能不会 - 如果您的程序需要自动生成的时间戳,数据库触发器生成的数据或数据库中的其他信息,那么您将不得不使用另一个查询。但是,如果您在插入的数据及其ID之后,您已经在程序中获得了该数据,并且不必执行其他数据库查询。
答案 1 :(得分:0)
这取决于您如何清理数据。如果您正在使用Accessors和Mutators - 那么当您将信息添加到对象时 - 它已经被清理。
所以,如果您有跟随变异者或访问者(由您使用),
class User extends Eloquent {
public function getNameAttribute($value)
{
return ucwords($value);
}
}
然后它导致:
$user->name = "test name";
echo $user->name; // "Test Name"
但如果你做其他一些逻辑,它可能不一样。