Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> В YII2 связать 3 таблицы mysql, В YII2 связать 3 таблицы mysql
Wet  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 4
Пользователь №: 43990
На форуме: 3 месяца, 9 дней
Карма:




Есть таблицы mysql:
1)
id name
1 Вася
2 Иван
3 Таня

2)
id user_id employee_id
1 _2 ____ 2
2 _1 ____ 1
3 _3 ____ 2

3)
id employee
1 Директор
2 Продавец

Создал все необходимые модели для всех 3х таблиц в gii. В CRUD создал поисковую модель, контроллер и вьюхи по модели 2й таблицы. На выходе получаем данные из 2й таблицы. И наконец задача: Вывести(связать, наверное как-то в ActiveRecord) данные в таком виде:
Иван Продавец
Вася Директор
Таня Продавец

Подскажите пжл как это реализовать
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



c начала 2017 года в Новосибирске.
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26438
Пользователь №: 21350
На форуме: 7 лет, 4 месяца, 6 дней
Карма: 739




ту несколько вариантов

либо нужны связи в виде ralations

тогда в запросе можно будет использовать with
либо использовать join

в любом случае нужен запрос в билдере

http://www.yiiframework.com/doc-2.0/guide-...aving-relations
http://www.yiiframework.com/doc-2.0/yii-db-query.html


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql (TSql, BI OLAP, MDX), Git, SVN, CodeIgnater, Yii 2, JiRA, Redmine, Bitbucket, Composer
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Wet  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 4
Пользователь №: 43990
На форуме: 3 месяца, 9 дней
Карма:




Я до этого прописывал в модели 2й таблицы:
/**
*
@return \yii\db\ActiveQuery
*/

public function getEMPLOYEE()
{
return $this->hasOne(Employees::className(), ['ID' => 'EMPLOYEE_ID']);
}

/**
*
@return \yii\db\ActiveQuery
*/

public function getPOSITION()
{
return $this->hasMany(Positions::className(), ['ID' => 'POSITION_ID'])->viaTable('employees', ['EMPLOYEE_ID' => 'ID']);
}


В таком виде как-нить возможно связать?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



c начала 2017 года в Новосибирске.
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26438
Пользователь №: 21350
На форуме: 7 лет, 4 месяца, 6 дней
Карма: 739




зачем капс ? связь должна называться по имени таблицы и начинаться с get - только такая свяязь будет считаться связью

    /**
*
@return \yii\db\ActiveQuery
*/

public function getOrder()
{
return $this->hasOne(Order::className(), ['id' => 'order_id']);
}


    /**
*
@return \yii\db\ActiveQuery
*/

public function getCallCenter()
{
return $this->hasOne(CallCenter::className(), ['id' => 'call_center_id']);
}



--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql (TSql, BI OLAP, MDX), Git, SVN, CodeIgnater, Yii 2, JiRA, Redmine, Bitbucket, Composer
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Wet  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 4
Пользователь №: 43990
На форуме: 3 месяца, 9 дней
Карма:




Спасибо! Разобрался
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса