
Ivan
11.08.2017
18:40:12
У меня есть ощущение что за это MySQL ругали, что она позволяет такую вольность. Если есть примеры БД которые позволяют не делать как MySQL без ONLY_FULL_GROUP_BY, напишите. PostgreSQL не даёт такого сделать.
Насколько я понимаю, id там будет тупо рандомный, см. первый ответ https://stackoverflow.com/questions/1066453/mysql-group-by-and-order-by
Это до версии 5.7.5 был легальный сспособ стрелять себе в ноги

Google

Konstantin
11.08.2017
19:00:42
id не рандомный, потому что сортировка
ну вот есть у меня "вакансии", а у них есть "ревизии", связь 1-N
и я хочу получить по каждой вакансии самую свежую ревизию
я понимаю, что GROUP BY не совсем для этого
кстати, как это можно еще сделать, но чтобы не через задницу?

Vasily
11.08.2017
19:07:54

Ivan
11.08.2017
19:16:36
id не рандомный, потому что сортировка
Если я верно понял этот коммент, то группировка происходит после отбрасывания строк, и происходит по результирующему набору, а id таки рандомные
Using non-aggregate columns in a SELECT with a GROUP BY clause is non-standard. MySQL will generally return the values of the first row it finds and discard the rest. Any ORDER BY clauses will only apply to the returned column value, not to the discarded ones.

Alex
11.08.2017
19:21:04
а через дистинкт не?
типа SELECT DISTINCT job_id, title FROM jobtool_revision ORDER BY created_at ASC
@beowulfenator
должно проканать
если есть индекс то вообще должно быть быстро по логике вещей

Google

Konstantin
11.08.2017
19:32:49

SiZE
11.08.2017
19:52:12
Странные вещи в этом чате
Вопрос на засыпку. ORDER BY работает с группировкой? ?

Konstantin
11.08.2017
20:03:52
ну уже ж вроде выяснили
что да, но уже после группировки
то есть фокусы, которые раньше работали, теперь работать перестали
спасибо всем участникам дискуссии :)
вот тут все весьма доходчиво оказалось:

Alex
11.08.2017
20:04:47
спасибо на хлеб не намажешь)

Konstantin
11.08.2017
20:04:49
https://stackoverflow.com/questions/1066453/mysql-group-by-and-order-by

[Anonymous]
11.08.2017
21:15:17
Есть кто?

Ivan
11.08.2017
21:16:15
Не-а, нету никого.

Lee
11.08.2017
21:27:42
Кто из здесь присутствующих юзал hscstudio cart?

Dmitry
11.08.2017
21:30:11
Илюха, реализуй кастомно :)

Lee
11.08.2017
21:32:07
Мне стало интересно в чём соль метода lock() у этого экстеншна и почему там ошибка на ошибке в коде. Как будто его левой ногой написали, не тестили и поддерживать не хотят.

censore
12.08.2017
06:08:19
Вот где ты вечно эти либы находишь?

Maxim
12.08.2017
07:37:28
Привет! Кто-нибудь знает, как в js можно передать в hiddenInput не строку из выбранных checkbox, а чтоб в hiddenInput на сервер пришел массив?
Здесь массив [1,2]
console.log($('#grid').yiiGridView('getSelectedRows'))
Делаю
$('#post_ids').val($('#grid').yiiGridView('getSelectedRows'))
И получаю строку '1,2'
console.log($('#post_ids').val())

Максим
12.08.2017
07:42:38
Всем привет! Ребят, как лучше сделать следующее? Есть несколько веб-приложений, абсолютно одинаковых по коду, различающихся лишь контентной частью (фразы, заголовки кнопок, контент страниц, пара изображений). Надо как-то сделать так, чтоб эти различия хранились локально. Думал использовать стандартный i18n, но оригинальные фразы могут меняться. Пришла в голову идея использовать вместо оригинальных фраз какие-то обозначения вроде FRONTEND_START_BUTTON_LABEL и потом сделать перевод на исходный язык, но мне кажется это каким-то костылём.

Google

Maxim
12.08.2017
07:46:28
@max_esl можно использовать в i18n DbManager и в каждом проекте подключаться к своей бд

Максим
12.08.2017
07:47:51
Просто помимо фраз у меня ещё есть куски html кода, и использовать i18n для этого мне кажется не очень хорошей идеей.
Получается, что в качестве оригинальной фразы будет выступать кусок html кода, мне это не очень нравится.

Maxim
12.08.2017
07:50:15
контент переводить нужно без html. Как потом верстку править, через админку или файл перевода?

Максим
12.08.2017
07:51:29
Вот это меня и смущает. Но городить CMS из-за двух страниц с текстом, разбитым на параграфы - избыточно.

Maxim
12.08.2017
07:54:51
не понял про CMS, но я бы один код в нескольких проектах не использовал. В итоге где-то нужно будет что-то незначительно поменять, а где-то оставить, и нужно будет все куда-то выносить

Максим
12.08.2017
07:58:13
Под CMS я имел ввиду средство для создания, редактирования и удаления страниц сайта. В моей ситуации оно избыточно (всего две-три страницы с небольшим html-кодом, и новых страниц вероятнее всего не будет ещё долго). Проекты одного заказчика и если и будет что-то меняться, то везде сразу, это 100%.
Мне изначально не очень понятна идея использовать фразу на оригинальном языке в качестве исходного значения для переводов. Ведь если поменяется оригинальная фраза, остальные языки останутся вообще без перевода этой фразы (ведь старое значение браться не будет из-за того что фраза поменялась). Так и появилась идея использовать код (неизменный) вместо фразы и делать перевод "с исходного языка на английский".

? ? ? Alex ? ? ?
12.08.2017
08:15:36

Максим
12.08.2017
08:17:29

? ? ? Alex ? ? ?
12.08.2017
08:17:45
t("Привет")
вот в файлах перевода и заполняешь потом на англе например 'Привет' => 'Hello'
ну что тто вроде так

Максим
12.08.2017
08:18:21
это я понял, что тут непонятного? )
а если завтра там будет t('Здарова'), то все переводы накроются и на всех языках будет "Здарова", а мне нужно поменять только в исходном.

? ? ? Alex ? ? ?
12.08.2017
08:19:25
нет
создаешь русский языковый файл
'Привет'=>'Здарова'

Максим
12.08.2017
08:21:39
то есть перевод с русского на русский. это ужасно, имхо. такой же костыль как и коды, которые я предлагал выше.

Google

? ? ? Alex ? ? ?
12.08.2017
08:21:58
нет н костыль
ты можещь как в symfony translator ltkfnm
делать
или вообще его сразу использовать

Evgenij
12.08.2017
08:24:50
всем привет, кто нибудь делал "время последнего логина пользователя", как варианты есть для реализации ?

Максим
12.08.2017
08:25:44

? ? ? Alex ? ? ?
12.08.2017
08:26:23
я не помню есть ли в уии эвенты когда юзер логинится

Evgenij
12.08.2017
08:29:33
есть там EVENT_AFTER_LOGIN

? ? ? Alex ? ? ?
12.08.2017
08:33:57
вот его слушай и апдейть дату

Maxim
12.08.2017
09:30:50
Не срабатывает TimestampBehavior для промежуточной теблицы
$userModel->link('posts', $post)
Есть ли вариант, кроме как задать явно в массиве третьим параметром?

Konstantin
12.08.2017
10:55:25
грустно все со временем последнего логина
потому что если там "remember me", то событие долго вызываться не будет
короче событие возникает, только если пароль ввести

? ? ? Alex ? ? ?
12.08.2017
10:57:07
Выбрасывайте свой эвент прямо в контроллере

Maksim
12.08.2017
13:40:31
А где смотреть документацию по js в yii. Ведь там как-то виджеты должны поддерживать события и т.д. Или документация по Bootstrap сойдет. https://getbootstrap.com/docs/3.3/ это она? Что-то как-то она не привычная.
Вот есть ли жс-метод у Modal, чтобы его закрыть?
Вот у меня есть модальное окно и я хочу добавить возможность закрывать его как крестиком, так и кнопкой. А потом то и другое обрабатывать в event listener для hidden.bs.modal. Вот я даже как-то нашел это событие, и то где-то на stackoverflow, а как самому в доки зайти я не пойму
https://v4-alpha.getbootstrap.com/components/modal/#modalhide ладно, нашел, но странно как-то.

Ivan
12.08.2017
13:47:29
ХАй всем! Подскажите пожалуйста, в дебаг панели yii2 можно отследить отправляется ли из формы в базу данные, и если не отправляються как то это узнать.

Google

Ivan
12.08.2017
13:47:35
понимаю звучит тупо)
найти не могу где в панели про бд есть строчки

Maksim
12.08.2017
13:49:17
Там список всех запросов со временем выполнения ищешь?

Ivan
12.08.2017
13:49:33
да
и вот не могу найти где у него там выборка по insert

Maksim
12.08.2017
13:50:18
Открываешь панель и жмешь DB
Там может быть и update
Вот, сейчас проверил и увидел UPDATE аж в конце списка

Ivan
12.08.2017
13:52:43
ааа понял, спасибо! у меня какая то проблема, и в базу не летит, поэтому я вижк только select

Maksim
12.08.2017
13:53:46
Давай код могу посмотреть, если хочешь.

Ivan
12.08.2017
13:55:37
``namespace app\models;
use Yii;
use yii\base\Model;
class CommentForm extends Model
{
public $comment;
public $email_author;
public function rules()
{
return [
[['text', 'email_author'], 'required'],
[['text', 'email_author'], 'string'],
];
}
public function saveComment($id)
{
$comment = new Comment;
$comment->text = $this->comment;
$comment->email_author = $this->email_author;
$comment->id = $id;
$comment->dt_create = date('Y-m-d');
return $comment->save();
}
}
это модель формы
''public function actionComment($id_comment)
{
$model = new CommentForm();
if(Yii::$app->request->isPost)
{
$model->load(Yii::$app->request->post());
if($model->saveComment($id_comment))
{
Yii::$app->getSession()->setFlash('comment', 'Your comment will be added soon!');
return $this->redirect(['news/view','id_comment'=>$id_comment]);
}
}
}
это сохранение

Maksim
12.08.2017
13:57:48
И в бд ноль записей?

Ivan
12.08.2017
13:57:59
ага

Maksim
12.08.2017
13:58:32
А код модели Comment покажи

Ivan
12.08.2017
13:58:55
<?php
namespace app\models;
use Yii;
/
* This is the model class for table "comment".
*
* @property string $id_comment
* @property string $email_author
* @property string $text
* @property string $dt_create
*/
class Comment extends \yii\db\ActiveRecord
{
/
* @inheritdoc
*/
public static function tableName()
{
return 'comment';
}
/
* @inheritdoc
*/
public function rules()
{
return [
[['email_author', 'text'], 'required'],
[[ 'text'], 'string'],
// [['dt_create'], 'safe'],
[['email_author'], 'email']
];
}
/
* @inheritdoc
*/
public function attributeLabels()
{
return [
// 'id_comment' => 'Id Comment',
'email_author' => 'Email Author',
'text' => 'Comment',
'dt_create' => 'Dt Create',
];
}
public function getDate()
{
return Yii::$app->formatter->asDate($this->dt_create);
}
public function getNews()
{
return $this->hasOne(News::className(),['id'=>'id_comment']);
}
}

Maksim
12.08.2017
14:01:09
И в бд таблица comment с такой же структурой?
И ты не проверяешь на валидность.

Ivan
12.08.2017
14:03:55