Как установить отношения с фреймворком Yii

#php #mysql #yii

#php #mysql #yii

Вопрос:

Извините, я новичок в веб-фреймворке yii

Я хочу знать, как связать между собой 2 таблицы.

Здесь,

Предположим, у меня есть 2 таблицы

первая таблица = Член (идентификатор, имя пользователя, пароль)

вторая таблица = Product(id, member_id, product_name, product_detail)

и у меня есть форма post product, когда я уже отправляю форму, я хочу показать member_id, что

войти.

Вот этот простой код для меня

В model/Member.php

 <?php
class Member extends CActiveRecord {

    public static function model($c = __CLASS__) {
        return parent::model($c);
    }

    public function tableName(){
        return "members";
    }



}
 

?>

В model/Product.php

 <?php
class Product extends CActiveRecord {

    public static function model($c = __CLASS__) {
        return parent::model($c);
    }

    public function tableName() {
        return "products";          
    }

    public function relations() {
        return array(
            "members" => array(self::BELONGS_TO, "Member", "members_id")
        );
    }
}
 

?>

Как писать код в контроллере,script.js и показывать ценность при просмотре?

Комментарии:

1. RTM : добавьте relations метод в Member класс с HAS_MANY HAS_ONE отношением или. Что касается кода js и контроллера: это действительно ваша работа… Так что это не генератор кода

Ответ №1:

 <?php 
//Get product by primary key.

$product_id = 20;
$data = Product::model()->findByPk($product_id);//SELECT * FROM product WHERE id = 20;

//get username and password from table member.
$username = $data->members->username;
$password = $data->members->password;
//"members" is the alias from function relations() in your model Product
//I mean this "members" => array(self::BELONGS_TO, "Member", "members_id")

//and like this select fields from "producto"
$product_name = $data->product_name;
$product_detail = $data->product_detail;