Shokha
это код в контроллере
Shokha
<?= DetailView::widget([ 'model' => $rows, 'attributes' => [ 'id', 'username', 'email:email', ], ]) ?>
Александр
<?= DetailView::widget([ 'model' => $model, 'attributes' => [ 'id', 'username', 'email:email', ], ]) ?>
Ruslan
$query = new \yii\db\Query; $query->select('*') ->from('user') ->innerJoin('profile', 'user_id = user.id'); $rows = $query->all();
Есть же gii в Yii, и этот код там генерируется на пару минут. Сгенерируй и посмотри как правильно нужно делать
Anonymous
У тебя до return'a все вмещается в одну строчку
Shokha
Ruslan
gii inner join ne delaet je
1. Его там можно делать 2. Есть with 3. with лучше чем запрос ->all() c join
Shokha
1. Его там можно делать 2. Есть with 3. with лучше чем запрос ->all() c join
значит когда исползую gii можно сделат innej join сразу он сам делает да? блин я с вчера читаю как делат inner join
Shokha
_)
Ruslan
Если здесь вопрос view, то датаПровайдер сдесь не нужен
Ruslan
значит когда исползую gii можно сделат innej join сразу он сам делает да? блин я с вчера читаю как делат inner join
да, только тебе придется все не объявленные поля модели прописать в search модели
Shokha
😅
Shokha
там у всех ползоваетлый одно и тоже данны бля
Ruslan
там у всех ползоваетлый одно и тоже данны бля
конечно, ты же по пользователю не фильтруешь
Shokha
помоги пж
Shokha
$query->select('*')->from('user')->innerJoin('profile', 'user_id = id');
Shokha
это вроде не правилно работает
Shokha
$query = new \yii\db\Query; $query->select('*')->from('user')->innerJoin('profile', 'user_id = id'); $rows = $query->one()
Shokha
вот общый
Shizoid
Доступные команды: help — сия справка :) gab [N] — вероятность вмешательства(0-50). locale [XX] — локаль сообщений. status — статус бота в чате. ping — Pong. me [текст] — аналог команды /me IRC/XMPP bayanizator [enable|disable|on|off] — Функция Чек-баян. eightball [вопрос] — Классический шарик с ответами на вопросы на "Да" и "Нет". cool_story — Рассказать крутую историю. winner [enable|disable|me|current] — Флудер дня.
Ruslan
/help@Shizoid_bot
Shizoid
Доступные команды: help — сия справка :) gab [N] — вероятность вмешательства(0-50). locale [XX] — локаль сообщений. status — статус бота в чате. ping — Pong. me [текст] — аналог команды /me IRC/XMPP bayanizator [enable|disable|on|off] — Функция Чек-баян. eightball [вопрос] — Классический шарик с ответами на вопросы на "Да" и "Нет". cool_story — Рассказать крутую историю. winner [enable|disable|me|current] — Флудер дня.
Ruslan
/winner@Shizoid_bot
Shokha
$query = new \yii\db\Query; $query->select('*')->from('user')->innerJoin('profile', 'user_id = id'); $rows = $query->one()
$rows = $query->All(); если пишу вот так все данние правилно выходит но как печатат в гриде их не знаю
Shokha
ребят помогите пж
Shokha
уже с вчера сижу с этой
Максим
$rows = $query->All(); если пишу вот так все данние правилно выходит но как печатат в гриде их не знаю
Через gii сгенерь какой нибудь контроллер с вьюхами и посмотри как там выводится
Максим
у меня тут много такие но толко без Inner join
Ну так в датапровайдер можно и с иннер джойн сделать
Shokha
просто надо вводит это данние на гриде
Максим
👌
Shokha
где user_id = $id
Максим
просто надо вводит это данние на гриде
Я читать умею и понял что надо
Максим
Или надо весь код за тебя написать?
Shokha
$rows = $query->all(); вот так он берет все данние из profile
Shokha
$rows = $query->one(); берет толко 1 данние из Profile
Максим
$rows = $query->all(); вот так он берет все данние из profile
В гриде не надо использовать ни all ни one
Максим
Там вводятся данные из dataProvider
Shokha
надо брат данние где из таблица Profile user_id = из таблица User ,id
Максим
все вот это надо осталное я сам могу
И это тоже можешь) посмотри как dataProvider используется и добавь туда джойн
Максим
Все то же самое, только без all() или ona()
Shokha
public function actionView($id) { $query = new \yii\db\Query; $query->select('*')->from('user')->innerJoin('profile', 'user_id = id'); $rows = $query->all(); return $this->render('view', [ 'model' => $this->findModel($id), 'rows' => $rows, ]); }
Shokha
я вот тут делаю inner join
Максим
Тебе надо в findModel это делать
Максим
А не тут
Максим
Там innerJoin добавляй
Shokha
Там innerJoin добавляй
'model' => $this->findModel->innerJoin('profile', 'user_id = id')($id),
Shokha
вот так чтоли
Максим
Нет в методе findModel
Shokha
'model' => $this->findModel(innerJoin('profile', 'user_id = id')),
Максим
Да бля
Максим
Не здесь а в самом методе
Максим
protected function findModel
Максим
Тут
Максим
Вообще проще конечно добавь связь в модели User с профилем и добавить его просто через joinWith
Shokha
Вообще проще конечно добавь связь в модели User с профилем и добавить его просто через joinWith
public function gettableProfile() { return $this->joinWith(Profile::className(), ['user_id' => 'id']); }
Максим
Не, там $this->hasOne должно быть
Максим
Но думаю можно и так
Максим
Просто то уже встроенный механизм
Максим
При генерации модели должен был добавиться метод
Shokha
Не, там $this->hasOne должно быть
Это не работал я это вчера делал
Shokha
я чтото нито делаю
Shokha
тут
Good
В разных часовых поясах это разное количество секунд))
Разве в разных поясах время по разному идет?) быстрее там или тормозит?)
Максим
Разве в разных поясах время по разному идет?) быстрее там или тормозит?)
конечно) согласно теории относительности Эйнштейна, время ближе в экватору идет быстрей, поскольку там скорость вращения выше
Good
А, ну ок)))))))
Еvгений
😂