以下是Model类
namespace App\Models\BaseModels;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Eloquent\Model;
class BallByBall extends Model
{
use SoftDeletes;
protected $table = 'ball_data';
protected $primaryKey = 'trans_id';
protected $guarded = [];
protected $dates = ['deleted_at'];
}
ball_data
的架构是:
CREATE TABLE `ball_data` (
`trans_id` int(10) NOT NULL AUTO_INCREMENT,
`tour_id` int(11) DEFAULT NULL,
`m_trans_id` int(11) DEFAULT NULL,
`match_id` int(11) DEFAULT NULL,
`team_id1` int(11) DEFAULT NULL,
`team_id2` int(11) DEFAULT NULL,
`innings` int(11) DEFAULT NULL,
`batsman_id` int(11) DEFAULT NULL,
`batsman_id2` int(11) DEFAULT NULL,
`bowler_id` int(11) DEFAULT NULL,
`fielder_id` int(11) DEFAULT NULL,
`batsman_score` int(11) DEFAULT NULL,
`bowler_given` int(11) DEFAULT NULL,
`extra_runs` int(11) DEFAULT NULL,
`total_runs` int(11) DEFAULT NULL,
`team_runs` int(11) DEFAULT NULL,
`for_wicket` int(11) DEFAULT NULL,
`ball_no` int(11) DEFAULT NULL,
`ball_type_id` int(11) DEFAULT NULL,
`ball_type` varchar(573) DEFAULT NULL,
`over_no` double DEFAULT NULL,
`maiden` int(11) DEFAULT NULL,
`wicket_id` int(11) DEFAULT NULL,
`wicket_type` varchar(573) DEFAULT NULL,
`wicket_desc` varchar(573) DEFAULT NULL,
`ball_length_id` int(11) DEFAULT NULL,
`ball_area_id` int(11) DEFAULT NULL,
`field_type_id` int(11) DEFAULT NULL,
`power_play` int(11) DEFAULT NULL,
`remark` varchar(573) DEFAULT NULL,
`commentry` varchar(573) DEFAULT NULL,
`deleted_by` int(11) DEFAULT NULL,
`updated_by` int(11) DEFAULT NULL,
`deleted_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`created_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`updated_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`trans_id`)
) ENGINE=InnoDB AUTO_INCREMENT=5025 DEFAULT CHARSET=latin1
当我执行App\Models\BaseModels\BallByBall::get();
时,我收到一个空集合。
答案 0 :(得分:3)
您正在使用SoftDeletes
特征,看起来您在此deleted_at
列中有时间戳而不是null
。这意味着该记录被软删除,Laravel默认不会显示。
因此,使用withTrashed()
方法也包括所有软删除的行:
BallByBall::withTrashed()->get()
或者将deleted_at
更改为null
以获取此记录。
答案 1 :(得分:0)
我认为您必须使用某些内容来获取软删除的记录,例如 - > withTrashed()函数。然后可以get()或all()集合。