
Zart
25.10.2016
19:39:01
группировать? а почему не фильтр?

F
25.10.2016
19:39:53
ну мне же нужно будет получить по одному самому свежему сообщению в "диалоге"
мб какую-то модель диалога еще добавить?

Igor
25.10.2016
19:40:17
а че мешает фильтровать по from_user и to_user?

Zart
25.10.2016
19:40:20
чат_ид поле?

Google

Igor
25.10.2016
19:40:25
и индексы туда хуйнуть я ж грил

Zart
25.10.2016
19:40:31

Igor
25.10.2016
19:40:44

F
25.10.2016
19:41:36
я и так буду по ним фильтровать
но если я сделаю что-то типа select * from messages where from_user=request.user and to_user=%some_other_user%, то он мне же вернет все сообщения
есишо у меня там орм, мне просто легче на скле написать было пример)
есть экран с диалогами, по типу как в вк
вот для него и думаю как лучше все организовать
@zartsoft говорил про чатайди, но чет не соображаю как модель под него рганизовать

Zart
25.10.2016
19:46:07
просто добавить поле...

F
25.10.2016
19:46:35
типа
при отсылке сообщения от ю1 к ю2 смотреть, есть ли чат с этими юзерами и, если нет, то создавать модель чата и к сообщению писать его в поле тоже?

Zart
25.10.2016
19:47:40
при отсылке сделать скрытым полем формы
при новом чате генерить новый айди

Google

F
25.10.2016
19:51:39
чат по апи будет работать только
при новом чате, это как я выше описал?

Zart
25.10.2016
19:52:22
к хомячку подробности
ты даже не определился с апи поди - рпц или рест

F
25.10.2016
19:52:53
рест

Zart
25.10.2016
19:52:59
у

F
25.10.2016
19:54:01
да уже хоть какое-нибудь

Igor
25.10.2016
19:57:59
а разве нужна необходимость юзать отдельное поле для айди чата? разве между 2 юзерами надо больше одного чата?

Zart
25.10.2016
19:58:18
м...

Igor
25.10.2016
19:58:18
если нет, то и поле как-то нах не надо

Zart
25.10.2016
19:58:33
только надо будет всегда это сортировать

F
25.10.2016
19:58:46
ну вот по идее не надо больше одного
но да, сортировка

Igor
25.10.2016
19:59:08
ну да, по таймстампу

Zart
25.10.2016
19:59:12
нет

Igor
25.10.2016
19:59:17
а чё сортировка?

Zart
25.10.2016
19:59:40
я про то что чат между А и Б должен иметь уникальным ключом только (А,Б), чтобы ключ (Б, А) был недопустим

F
25.10.2016
19:59:52
хотя мб я слишком переживаю за нагрузку на бд
просто чтоб отдать список диалогов пилить выборку по сообщениям всех всем - хз

Zart
25.10.2016
20:00:18
CHECK (user1_id < user2_id)

Igor
25.10.2016
20:01:00

Google

Zart
25.10.2016
20:01:10
chat_id как бы решает эту проблему кардинально

Igor
25.10.2016
20:01:14
они ж дублироваться не будут

Zart
25.10.2016
20:01:16
и по сути является кукой сессии
они ж дублироваться не будут
тебе придётся тогда рисовать портянку вида
WHERE (id_user1=:user1 AND id_user2=:user2) OR (id_user1=:user2 AND id_user2=:user1)

Igor
25.10.2016
20:02:40
а поиск по всем сообщениям можно делать where from user in (id1, id2) and touser in (...)
черт, ты быстрее
это пиздец?
ну хотя да
не очень

Zart
25.10.2016
20:03:05
да не особо пиздец, но выглядит коряво
плюс вопрос может ли юзер писать мессаги сам себе
в некоторых чатах можно (ирц, телеграмм)
в некоторых низзя (скайп)

Igor
25.10.2016
20:03:29
да, наверное..

F
25.10.2016
20:03:56
допустим, что может
будет скрытая фича))

Zart
25.10.2016
20:03:58
сколько нюансов всплывает, да?

Igor
25.10.2016
20:04:00
если это чат а-ля поддержка jivosite - то нах не надо

Zart
25.10.2016
20:04:21
такие вещи и нужно покрывать тестами 8)

F
25.10.2016
20:04:26
ага, пздц

Zart
25.10.2016
20:04:30
что можно, что низзя

F
25.10.2016
20:04:44
но я в режиме фрилансера, так что хуяк хуяк и в продакшен

Igor
25.10.2016
20:04:57
эх, тесты - это прекрасно

Google

Zart
25.10.2016
20:05:07
как в том анекдоте...

F
25.10.2016
20:05:08
согласен
про тесты)

Zart
25.10.2016
20:06:27
— а что это у вас там на прилавке такое красивое, розовое и воздушное?
— это? йогурт
— *мечтательно* ах йогурт... мне две бутылки водки и пару конфеток

F
25.10.2016
20:07:04
так и живем, десу

Zart
25.10.2016
20:08:33
главное - ловить исключения

F
25.10.2016
20:10:10
не ловлю
наверное, поэтому из меня тренер покемонов не получился

Admin
ERROR: S client not available

Zart
25.10.2016
20:10:45
ну это не из покемонов кадры, ну да ладно

F
25.10.2016
20:11:16
я это заметил
ты скзаал "ловить" и я сразу подумал про покемонов

Bulatbulat48
25.10.2016
20:40:29
Есть у кого-нибудь хорошая статья по ооп?

Aleshka
25.10.2016
20:41:14
а есть функция проверки, является ли строка литералами
типа как isalpha
только чтобы были только всякие разные \n\r и тд

b0g3r
25.10.2016
20:41:37
напиши регулярку

Zart
25.10.2016
20:41:49
типа как isalpha
ты не поверишь
>>> 'abc'.isalpha()
True
>>> 'abc123'.isalpha()
False

Aleshka
25.10.2016
20:42:06
поверю, потому что альфа это алфавит
и что

Google

Zart
25.10.2016
20:42:27
ну оговорку надо было в том же посте писать 8\

Aleshka
25.10.2016
20:42:30
мне не нужно содержание литералов в строках, мне надо чтобы были только они и ничего кроме

Zart
25.10.2016
20:42:41
началось...

b0g3r
25.10.2016
20:42:42
напиши регулярку

Zart
25.10.2016
20:42:50
сперва им надо проверку, потом только литералы

Stanislav
25.10.2016
20:44:38

F
25.10.2016
20:45:22
> говночат
Не, на гетах и постах

Kill me pls
25.10.2016
20:45:26
Простенький код гдк можно почитать?

F
25.10.2016
20:46:06
Вышла новая серия ходячих, так что чат завтра)

Sonniy
25.10.2016
20:46:42
скажи мне кого ниган убил

Older
25.10.2016
20:46:51
Я могу сказать)

Sonniy
25.10.2016
20:46:54

Older
25.10.2016
20:46:58
Китайца и рыжего)

Sonniy
25.10.2016
20:47:06
обоих сразу?

Older
25.10.2016
20:47:14
по очереди

F
25.10.2016
20:47:15
Бляяяя
Я не посмотрел же еще

Older
25.10.2016
20:47:23

F
25.10.2016
20:47:24
Ну шог такоэ

Older
25.10.2016
20:47:33
не удержался))

Sonniy
25.10.2016
20:47:36
по комиксу он убил глена)

F
25.10.2016
20:47:43
Ну я ванговал что китайца
Эта группа больше не существует