У меня есть две таблицы. заявителей и заявителей.Kohana 2.3 установить имеет одно отношение между двумя таблицами с первичными ключами, не названными как «id»
applicants
->applicant_id int(11) PK
->name varchar(45)
applicant_accounts
->account_id int(11) PK
->applicant_id int(11)
->userName varchar(45)
Я поставил этот код в своих Applicants_Model, он не работал.
protected $has_one = array('applicant_account' => array('model' => 'Applicant_Account', 'foreign_key' => 'applicant_id'));
Я попытался переименовать первичные ключи в «ид» и достиг своего желаемого результата, поставив этот код в моем Applicants_Model.
protected $has_one = array('applicant_account');
А затем доступ из него данные этого
$applicant = ORM::factory('applicant', 1);
echo $applicant->name.' ----> '.$applicant->applicant_account->userName;
Пожалуйста, помогите меня.Я должны знать, как иметь HAS_ONE отношения в течение двух таблиц с первичными ключами, не названных в «ID»
Applicant_Model
<?php defined('SYSPATH') OR die('No direct access allowed.');
class Applicant_Model extends ORM {
protected $has_one = array('applicant_account' => array('model' => 'Applicant', 'foreign_key' => 'applicant_id'));
protected $primary_key = 'applicant_id';
}
Ap plicant_Account_Model
<?php defined('SYSPATH') OR die('No direct access allowed.');
class Applicant_Account_Model extends ORM {
protected $primary_key = 'account_id';
}
testing.php (для отображения целей только)
$applicants = ORM::factory('applicant', 1);
echo $applicant->name.' | '.$applicant->applicant_account->userName.'<br>';
Ох. просто напоминание. Я использую kohana 2.3, и я видел свое решение от kohana 3.2, поэтому Im действительно не уверен, что он будет работать ahhaha –