
Juri
18.09.2017
11:49:30

Ad.x ??
18.09.2017
11:49:42
классическая схема many-to-many для выборки внутри категории работает быстрее
уже молчу про сортировки. Хотя и в курсе, что на больших таблицах оптимизируется либо до гибридного варианта (со списком в строке), либо вообще хранится ид набора категорий или тегов
и все же эта схема для сбора статы за период ну никак не подходит

Google

Ad.x ??
18.09.2017
11:54:25
иначе можно смело утверждать, что разрабы кликхауса лошки какие-то

Juri
18.09.2017
11:54:51
как я уже и писал выше для сбора статы отлично подойдет вот такая схема. 1 таблица с тремя полями, id материала, дата, каунтер. все. больше нчиего не нужно, на все три поля повесить индексы. работать будет очень быстро

Sergey
18.09.2017
11:55:36
А на каунтер зачем индекс?

Ad.x ??
18.09.2017
11:56:19
как там будет поддержка этой системы происходить его это не волнует )

Juri
18.09.2017
11:56:47
аааа, когда клиент начинает влезать в разработку то получается только медленнее

Ad.x ??
18.09.2017
11:57:07
ну под клиентом я подразумеваю Рината
он спросил 2 варианта, я же попытался ему намекнуть что вариант 1 бред сивой кобылы
просто напомню

Juri
18.09.2017
11:58:30
это не просто бред... это жуть
интересно, как быть если материал появился в середине месяца)

Ad.x ??
18.09.2017
11:59:32
пусть костылит, потом все равно сделать по человечьи )

Google

Sparrow
18.09.2017
12:06:06
Приветствую народ
Кто нибудь с вордпресс работает?
Не могу понять как выводить одну вещь

Alexandr
18.09.2017
12:07:30
как в rest api отразить операции блокировки/заморозки аккаунта (два разных действия, которые меняют статус в базе) ? ... если делать PATCH /users/{userId} и передавать нужный статус, то клиентам придется знать о деталях реализации ... если делать PATCH /users/{userId}/block, то это типа нарушение rest-принципов)

I_Akhmedov
18.09.2017
12:13:28
Всем привет
http://t.me/CashRobotsBot?start=TKrLHQng
Зайдите пожалуйста мне нужно 6 рефералов собрать

Айбулат
18.09.2017
12:15:52
лол
бля, че только тут не увидишь

I_Akhmedov
18.09.2017
12:16:53
Заходи

Roman
18.09.2017
12:18:06
да уж, настоящий phpGeeks чат )
надо только phpGeeks 7.1 - We WON! назвать

Sergey
18.09.2017
12:48:22

Alexandr
18.09.2017
12:51:06
то же самое, клиент будет зависить от реализации блокировки/заморозки на стороне сервера (смена статуса) ... плюс для реализации двух разных действий будет одна точка входа

Alex
18.09.2017
12:57:11
Лечииись

Sergey
18.09.2017
13:18:33

Alexandr
18.09.2017
13:19:28
нет, клиент просто хочет отправить запрос на сервер "заблокируй аккаунт с id 12345" ... клиенту должно быть всё равно как это делается

Sergey
18.09.2017
13:20:04
Но он же знает куда посылать и что посылать

Alexandr
18.09.2017
13:20:35
вот о том и вопрос, как установить контракт на такое действие в рамках rest-парадигмы )

Sergey
18.09.2017
13:20:45
Передавай статус текстом

Google

Sergey
18.09.2017
13:20:58
url это тоже часть реализации

Ivan
18.09.2017
13:21:15

Sergey
18.09.2017
13:21:28
Тебя же не смущает то что клиент посылает на /users

Ivan
18.09.2017
13:22:09
Это не парадигма и не паттерн, а принцип взаимодействия

Sergey
18.09.2017
13:22:21
Клиент может хочет посылать на /clients, но ты показываешь ему свою реализацию

Alexandr
18.09.2017
13:23:56
я могу сделать PATCH /users/{uesrId} (body:{status: "blocked"}) ... но тогда для заморозки у меня будет та же точка входа только status: "frozen" ... что выглядит сомнительно

Sergey
18.09.2017
13:25:44

Alexandr
18.09.2017
13:29:44

Ivan
18.09.2017
13:31:36

Ivan
18.09.2017
13:32:02
ключивое слово "функционально"
т.е. какую логику мы будем абстрагировать в коллбеках

Никита
18.09.2017
13:34:32

Alexandr
18.09.2017
13:35:04
вопрос в том, что лежит в корне? чем блокировка функционально отличается от заморозки?
разница лишь в контроле доступа над операциями, хотя в будущем может и увеличиться ... смешивать не вариант ... абстрагировать нужно именно на уровне URI ... проблема в том, что PATCH /user/{userId} - это обновление данных юзера ... и по идее, должно использоваться именно тогда, когда клиент хочет обновить данные юзера, ничего кроме ... потому и для более высокоуровневых доменных операций (которые могут включать, а могут и не включать обновление данных ресурса) использовать этот URI сомнительно

Andrey
18.09.2017
13:43:36
Кто бы как реализовывал роутинг для cms?

Никита
18.09.2017
13:44:02

Andrey
18.09.2017
13:45:16

Google

Никита
18.09.2017
13:45:40

Andrey
18.09.2017
13:47:13
в смысле?
Ты будешь для каждой страницы контроллер заводить? Или экшн? Или есть еще варианты?

Никита
18.09.2017
13:47:34

Andrey
18.09.2017
13:49:25

Евгений
18.09.2017
13:50:13

Admin
ERROR: S client not available

Никита
18.09.2017
13:50:38

Andrey
18.09.2017
13:50:40

Никита
18.09.2017
13:52:04

Andrey
18.09.2017
13:52:31

Ivan
18.09.2017
13:56:49
разница лишь в контроле доступа над операциями, хотя в будущем может и увеличиться ... смешивать не вариант ... абстрагировать нужно именно на уровне URI ... проблема в том, что PATCH /user/{userId} - это обновление данных юзера ... и по идее, должно использоваться именно тогда, когда клиент хочет обновить данные юзера, ничего кроме ... потому и для более высокоуровневых доменных операций (которые могут включать, а могут и не включать обновление данных ресурса) использовать этот URI сомнительно
Если честно, то лично я не вижу проблемы. Но признаю, что вопрос может быть вполне резонным, просто потому что мы по разному на задачу смотрим. В конце концов я программист, а не архитектор)

Alexandr
18.09.2017
13:58:30

Andrey
18.09.2017
14:01:22

Никита
18.09.2017
14:02:48

Andrey
18.09.2017
14:04:07
100500 путей

Никита
18.09.2017
14:04:28

Andrey
18.09.2017
14:05:57
Да
Клиенту подробную инструкцию только выдать не забудь как добавить страничку на его же сайт)

Никита
18.09.2017
14:06:32

Google

Andrey
18.09.2017
14:07:49
А клиент тут причём?
Ну не клиенту а манагеру которая будет работать на этой cms и добавлять странички на сайт

Никита
18.09.2017
14:08:31
posts/show

Andrey
18.09.2017
14:11:01
posts/show
Site.ru/htrc/gdbn/fbnj/hnng/ngdt/g вот такой url нужно сделать например

Никита
18.09.2017
14:11:14

Andrey
18.09.2017
14:11:44

Никита
18.09.2017
14:12:36

Andrey
18.09.2017
14:14:26

Никита
18.09.2017
14:14:42
И?
и подставляешь туда wildcards
И?
вот, например, пример для ларавела
Route::get('posts/{categories}', 'PostController@categories')
->where('categories','^[a-zA-Z0-9-_\/]+$');

Andrey
18.09.2017
14:18:50
Вот это уже ближе похоже на ответ, спасибо, буду дальше думать

Евгений
18.09.2017
14:19:50

Andrey
18.09.2017
14:21:51

Евгений
18.09.2017
14:22:36
так этот путь строится по цепочке категорий
вложенных друг в друга