당신은 __consruct
방법을 사용할 수 있습니다. 여기
다른 대안입니다 : -
YourController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\YourModel;
class YourController extends Controller
{
public function callModelStaticMethod()
{
$data = ['appId'=>4, 'languageId'=>5];
YourModel::passDataToModelMethod($data);
}
}
YourModel.php
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class YourModel extends Model
{
public static function passDataToModelMethod($data)
{
var_dump($data);
// Write your business logic here.
// $newObj = new self;
// $newObj->app_id = $data['app_id'];
// $newObj->language_id = $data['languageId'];
// $newObj->save();
}
}
모델의 사용 __construct 방법. 객체가 시작될 때 그 값을 전달하십시오. –
감사합니다. Ravi, 모델에서 __construct를 사용하고 app_id에 대한 값을 하드 코드하여 테스트했지만 시도한 후에 app_id가 저장되지 않습니다. – jon
모든 모델에'app_id'와'language_id'가 삽입 된 특별한 이유가 있습니까? 대신에 이것들만을 프로퍼티로 가지는 모델을 생성하고 능변을 사용하여 그 모델을 매핑하십시오. 또는 이들을 사용자 객체에 주입하고 그 주위를 전달하십시오. –