@phpclubru

Страница 796 из 956
Terminator
09.02.2019
06:05:48
@sermalart будет жить. Поприветствуем!

dypa
09.02.2019
06:13:50
непонятны эти цифры.. это типа общее время обработки и время для обработки на 1 запрос?
прочитай про explain, цифры про которые ты спрашиваешь к производительности не имеют отношения

Херовая практика - хранить в БД в JSON
хреново - не отличать БД от РСУБД

слов не нашлось?

Google
dypa
09.02.2019
06:33:21
где троллинг?! когда указывают на ошибку в суждении? если есть такая любовь к вики, то изучай https://ru.m.wikipedia.org/wiki/%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85

"Херовая практика - хранить в БД в JSON" - мы с pg разве начали?

культурка хромает...

Алексей
09.02.2019
06:53:27
какая ты черствая

Den
09.02.2019
06:55:03
https://github.com/Piterden/crosswords-module
Лучше сделай ревью dypa

dypa
09.02.2019
06:55:21
@Piterden я нахожу странным удалять сообщения, явно проще думать сначала, а потом писать.

Лучше сделай ревью dypa
таблица в которой хранятся буквы не поддерживает слова длинной 100050000 символов, стоит подумать над этим в первую очередь

Den
09.02.2019
06:57:06
31 максимум

На кроссворд должно хватить

https://crossword.stagelab.pro/crossword/words/find/0/М_Б______

Уже работает

dypa
09.02.2019
07:00:33
//'web' => [ // Defr\CrosswordsModule\Http\Middleware\ExampleMiddleware::class, //],

у нас гит есть, не оставляй комментарии

Google
dypa
09.02.2019
07:01:47
31 максимум
почему не 32, не 33, не 50, не 1000?

Den
09.02.2019
07:01:54
у нас гит есть, не оставляй комментарии
Надо почистить. Это генератор делает

почему не 32, не 33, не 50, не 1000?
Потому что в базе слов, которую я дернул, было макс 31

dypa
09.02.2019
07:03:53
Потому что в базе слов, которую я дернул, было макс 31
а в других базах будет 24 и 38. как быть? способ хранения букв так себе.

Den
09.02.2019
07:04:40
Там демка - чекни

Лучшее что смог придумать

Terminator
09.02.2019
07:06:57
@serj_sen будет жить. Поприветствуем!

Сергей
09.02.2019
07:08:35
Всем привет. Кто-нибудь имел дело с форумами IP.Board v3.*? Очень нужны доки.

dypa
09.02.2019
07:09:23
Лучшее что смог придумать
так подумай еще раз, 3 нормальная форма может помочь

Там демка - чекни
демка мне не интересна WordsController::create - зачем нужна переменная post?

Den
09.02.2019
07:12:54
демка мне не интересна WordsController::create - зачем нужна переменная post?
Создание недоделано. Демку зря не смотришь.

Доделаю скоро

Это же пет-проект

Aleksandr
09.02.2019
07:14:32
Сильно. Но зачем так?

Den
09.02.2019
07:14:49
Для API

https://crossword.stagelab.pro/crossword/words/find/0/М_Б______

dypa
09.02.2019
07:20:56
CluesController::find почему разные стратегии поиска букв и цифр?

и разве word в том случае не является всегда строкой?

Google
Den
09.02.2019
07:22:40
Можно получить одно слово

По ID

Это не для API

dypa
09.02.2019
07:32:26
По ID
значит либо ты врешь, либо phpdoc :)

Den
09.02.2019
07:34:10
значит либо ты врешь, либо phpdoc :)
А в роуте всегда строка. Там на нумерик проверка.

Aleksandr
09.02.2019
07:35:02
Для API
Ну у меня больше вопрос по такой структуре базы. Как то оно не очень...

dypa
09.02.2019
07:35:20
Aleksandr
09.02.2019
07:37:57
Предложи как лучше
Три столбца: ID слова, ID буквы и номер позиции буквы в слове

Den
09.02.2019
07:39:34
Показать выборку всех восьмибуквенных слов сможешь?

Aleksandr
09.02.2019
07:39:54
Можно не ID буквы, а её код например, ну или саму букву. Тут ещё надо бы посмотреть что лучше будет индексироваться

Den
09.02.2019
07:44:18
Хочешь сказать, что будет задано слово прописью и плюс еще и буквы будут?

Artem
09.02.2019
07:48:02
Херовая практика - хранить в БД в JSON
есть JSONB (который поддерживает индексы), а вообще есть эластик и масса других куда более подходящих бд.

Хочешь сказать, что будет задано слово прописью и плюс еще и буквы будут?
нет там судя по структуре join будет, но простейший и сделать выборку не сложно

Den
09.02.2019
07:48:42
Да у меня и так все норм

https://0l3q5ozyl.codesandbox.io/

Artem
09.02.2019
07:50:31
https://0l3q5ozyl.codesandbox.io/
< 100 000 слов а загрузка заняла 3-4 секунды. Он что -то сложное делает перед показом страницы первой?

Google
dypa
09.02.2019
07:54:33
Artem
09.02.2019
07:54:52
просто эти данные поместятся в памяти и работать будет в разы быстрей, на больших числах реляционная модель для работы со строками сомнительная затея

но эт все на пальцах нужны бенчмарки и не факт, что задача будет. Но держать базу еще и корявый майсиквел ради 15к строк -это прям хз.

Den
09.02.2019
07:57:22




Artem
09.02.2019
07:58:25
с другой стороны оно работает и думает не долго. Просто мне не нравится, что на больших числах места для оптимизации нет, поскольку повлиять на скорость поиска нельзя

интересно посмотреть на него под нагрузкой, ты уже тесты запускал какие?

Aleksandr
09.02.2019
08:00:38
Хочешь сказать, что будет задано слово прописью и плюс еще и буквы будут?
Ну так буквы подтягиваются из другой таблицы, либо в этом же запросе через JOIN, либо отдельно для конкретного слова по его идентификатору

Artem
09.02.2019
08:01:22
еще бы добавить возможность ограничить имеющиеся буквы из которых можно составить слова подставив к имеющимся. Я точно видел кого -то в такую игрушку где -то играющего)

и редактирование грида неудобное. поставил буквы на 17 и 20, хотел уменьшить сверху, а нифига, он снизу режет и букву убивает

и еще хотелось бы добавить возможность загрузить картинку с гридом, а он уже пусть подумает и покажет какие буквы и куда ставить и все -можно пользоваться)

Den
09.02.2019
08:05:31
Там есть генерация грида

В edit mode

Artem
09.02.2019
08:07:44
генерация это другое, нужно иметь возможность сделать фото или скрин имеющегося грида и получить подсказки -читерство же наиболее популярная тема, пользователей будет много)

Den
09.02.2019
08:08:40
Кстати похоже на qr код

Как бы мне уменьшить количество 2х и 3х буквенных слов при генерации?

Еще можно симметрию переключать

И можно реализовывать автофилл

Google
Artem
09.02.2019
08:15:33
Как бы мне уменьшить количество 2х и 3х буквенных слов при генерации?
если он сразу по всем полям ищет то никак, разве что не отдавать слова на клиент, а только count, а дальше лениво уже грузить по клику и грузить только часть. Но проще не показывать все, а только то, что просят например выделением. Ну и если уж отдаешь слова, то можно сразу какие то веса им придумать и заполнять сетку (можно и случайно, но часто в таких игрушках каждая буква сколько то стоит и нужно учитывать стоимость максимальную)

Den
09.02.2019
08:16:08
Его и из песочницы надо на сайт пихнуть

Минуту

Грид генерится оффлайн

Artem
09.02.2019
08:16:39
так удобней будет, особенно если в заполненной сетке будет возможность изменить букву и она перестроится, тогда выделение для генерации отлично подойдет, чтобы выделить и заменить или получить предложения по слову

Грид генерится оффлайн
да какая разница, ты с первым же запросом знаешь его состояние

Den
09.02.2019
08:17:14
Нет

Сначала рисуется сетка

Без запросов

Artem
09.02.2019
08:17:59
т.е. ты просто все слова на клиента отдаешь и там фильтруешь?

Den
09.02.2019
08:17:59
Там сущности - слова

Погоди

API видел?

Страница 796 из 956