*Jamie Rumbelow の MY_Model* の使用を理解する方法、特にこのアイデアを実装する方法を見つけようとしています。
ゲームアプリをまとめています。ユーザー数もキャラ数も多い。各ユーザーは複数のキャラクターを持つことができますが、1 人のユーザーが操作できるのは各キャラクターのみです。というフィールドを持つユーザーのテーブルがありますdefault_character
。これは、文字の id フィールドによって表される外部キーです。
私のコードでは、現在ログインしているユーザーを取得するために次の関数呼び出しを使用しています。
$user_data = $this->user->get_by('username', $post_username);
私がやりたいのは、これを行うときに、代わりに default_character フィールドから整数値を追加して、そのキャラクターの名前を取得したいということです。これはどのように見えるでしょうか?
編集 :
なんらかの理由で、swatkins の回答を試行した後でも、データベースからの数値文字列の値しか表示されません。私がやりたいのは、それを使用して文字テーブルから character_name を取得することです。
テーブル
user - user_id, username, default_character_id
characters - id, character_name
object(stdClass)#23 (12) {
["user_id"]=>
string(5) "10003"
["first_name"]=>
string(3) "tom"
["last_name"]=>
string(8) "williams"
["username"]=>
string(9) "twilliams"
["password"]=>
string(40) "431db25cf8fe0ccf374365ae9c644c7bfdeb7399"
["password_hash"]=>
string(11) "ed95d918116"
["email_address"]=>
string(19) "twilliams@yahoo.com"
["status_id"]=>
string(1) "2"
["lock_date"]=>
string(19) "0000-00-00 00:00:00"
["default_character_id"]=>
string(1) "1"
["created_at"]=>
string(19) "2013-07-30 10:00:00"
["updated_at"]=>
string(19) "0000-00-00 00:00:00"
}
ユーザーモデル(application/modules/user/models/user_model.php) (MY_Controllerにロード)
<?php
class User_model extends MY_Model
{
public $primary_key = 'user_id';
public $has_many = array('characters' => array('model' => 'character_model' ));
public function __construct()
{
parent::__construct();
}
}
Character Model(application/modules/character/models/character_model.php)(コントロールパネルコントローラに読み込まれます)
<?php
class Character_model extends MY_Model
{
public $belongs_to = array('user' => array('primary_key' => 'default_character_id'));
public function __construct()
{
parent::__construct();
}
}
これがデータベース構造の問題かどうか疑問に思っています。このトピックについて他に何か考えはありますか? どんな助けでも素晴らしいでしょう。
私はまだ自分が間違っていることについていくつかの懸念を抱いています。誰でも私を助けることができますか?