Laravel 5:从模型中访问数据库数据

时间:2015-05-31 21:58:13

标签: php eloquent laravel-5

我试图使用Laravel从数据库访问某些数据。我已经设置了我的模型,它运行正常但是我试图通过在模型中创建一个方法来获取另一个表中的一些数据,该方法获取数据并将模型的属性设置为等于获取的数据。

要获取数据,我尝试使用$this->id属性获取此行的ID并使用它从另一个表中获取数据(例如:SomeOtherModel::where('other_id', '=', $this->id)->get();

但是,此时模型中没有任何数据似乎已被模型提取(例如:$this->id为空)。我的构造函数看起来像这样:

public function __construct() {
    parent::__construct();
    $this->other_data = $this->getOtherData();
}

有没有办法从数据库中调用$this->id属性,以便我可以在模型中使用它?

2 个答案:

答案 0 :(得分:0)

你的语法似乎我错了:

SomeOtherModel::where('other_id', '=', $this->id)->get();

你可以试试这个:

SomeOtherModel::where('other_id', $this->id)->get();

参考:https://laravel.com/docs/5.1/eloquent#retrieving-single-models

我希望这会有所帮助。

答案 1 :(得分:0)

解决方案解释为here

func checkmarkWasTapped(_ sender: UIGestureRecognizer) {

    let checkmarkView= sender.view as? SSCheckMark

    let indexPath = IndexPath(row: checkmarkView.tag, section: 1)

    if checkmarkView.checked == true {
        checkmarkView.checked = false
    } else {
        checkmarkView.checked = true
    }
    collectionView.reloadItems(at: [indexPath])
}