laravel eloquent를 사용하여 2 개의 테이블을 결합하고 싶습니다. 나는 쉽게 이것을 mysql에서 할 수 있지만 이것을 사용하지는 못한다.Laravel Eloquent가 2 개의 테이블을 함께 결합합니다.
나는이 다음과 같은 방법을 포함 device.php
라는 모델이 있습니다
public function wifi_client_connection(){
return $this->hasMany('UserFrosting\WifiClientConnection');
}
을하지만 난 열이 device_uuid
라는 것을 열을 mac_address
하지만 WifiClientConnection
나던라는 칼럼을 사용하여 WifiClientConnection.php
모델을 연결해야합니다. mac_address
는 다음과 같은 방법을 사용하여 device_uuid
로 변환 : MySQL의에서
public function getDeviceUUID(){
return hex2bin(md5($this->mac_address . $this->number));
}
내가 같이 함께 두 테이블을 조인 :
LEFT OUTER JOIN device ON wifi_client_connection.device_uuid = UNHEX(MD5(CONCAT(device.mac_address, device.number)))
가 어떻게 그 사용 Laravel 웅변과 같은 작업을 수행 할 수 있습니다.
나는 또한 WifiClientConnection.php
모델에서 나는이 방법 그래서 라운드의 관계를 다른 방법이 필요합니다 :
public function device(){
return $this->belongsTo('UserFrosting\WifiClientConnection');
}
을하지만 다시 나는 일이 관계 mac_address
에 device_uuid
을 변환 할 필요가
어떤 도움 주셔서 감사합니다
당신이에있는 두 개의 테이블을 조인 할 것을 말하고있다 - - (https://laravel.com/docs/5.5/queries#joins) – Eric
귀하의 질문이 명확하지 조금된다 Laravel QueryBuilder 조인]를 변환 된 컬럼? 나는이 방법으로 합류하는 대신 대리 외래 키를 사용하는 것이 좋습니다. – alexw