Сергей
да-да
mr.
Чо дада, придумай свой алгоритм)
Сергей
но ID уникален должен быть и система это должна проверять :)
mr.
Можешь микротайм возвращать))
mr.
Сергей
На ум приходит только 1 вариант:
1) хранить где-то счётчик
2) при генерации ID брать счётчик+1 и сохранять счётчик, а также проверять нет ли такого ID в таблице.
3) если ID в таблице есть повторить п. 2.
Я придумал :) Но может что есть получше
Сергей
числа должны быть короткие и по порядку, если есть возможность
Konstantin
Konstantin
если у тебя есть какая-то таблица с айдишниками, то нет никакой проблемы получить следующий свободный
Konstantin
тут есть только одна проблема - взаимное исключение
Konstantin
т.е. этот генератор не может обслуживать запросы параллельно
Konstantin
то есть нужен генератор, который умеет две вещи: выдать следующий свободный номер и валидировать номер, который дает сотрудник
Konstantin
понимаешь?
Konstantin
ведь не исключен случай, что сотрудник выдумает неуникальный номер
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
Konstantin
решит, но лучше все сделать через один и тот же механизм
SiZE
Konstantin
если уж надо спросить у генератора новый айдишник перед сохранением
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
Дефолт max + 1, валидация проверяет свободность и все
SiZE
PK не надо подмешивать в бизнес логику
Konstantin
так ему хотелось может еще в свободные пространства заполнять
Konstantin
Konstantin
только я не предлагаю этот инвентарный номер делать PK
Konstantin
просто отдельной колонкой
Konstantin
потому что завтра он будет неуникальный и нецифровой
Konstantin
горе людям, которые в качестве ключа используют, например, номера накладных
Konstantin
или код ОКПО предприятия
Konstantin
потому что завтра отключат свет, и тебе надо будет провести выписанные вручную накладные
Konstantin
а потом окажется, что у двух накладных одинаковый номер
Konstantin
и бухгалтер будет хлопать глазами и говорить "а давайте эта накладная будет ПН-117, а эта будет ПН-117*"
Konstantin
реальная история
Konstantin
поэтому я за суррогатные ключи всегда
Jack
всегда что?
Konstantin
всегда за суррогатные ключи
Jack
кто подскажет по поводу импорта из excel? что можно поставить?
mr.
Jack
я не знаю
Jack
или уже нужно PhpSpreadsheet?
👻
https://github.com/moonlandsoft/yii2-phpexcel
👻
как вариант
👻
умеет и импорт и экспорт
Evgeniy
Ребят, а как просто реализовать rbac в yii2 basic? спасибо
mr.
Evgeniy
Jack
ты даже не спросил какой
The Ant
а зачем? модуль же, ну и нагуглит )
Evgeniy
просто думал как-то по Id можно разрешить доступ к контроллеру
Jack
так и будет гуглить "модуль скачать?
i_vovolk
Evgeniy
Ulugbek "Luke"
Всем привет. Никто не работал с SSH соединением к linux серверу на Godaddy? Знаю лог пасс ssh и mysql, но никак не могу экспортировать базу данных. Кто-нибудь может помочь?
The Ant
ну так логинься, putty в помощь, или другой ссх клиент. или че у тебя там есть
The Ant
гугли как импортить базу
👻
adminer залей в папку дампни базу и удали
👻
mysqldump -uroot -p database > database.sql
Anonymous
@faucetclub Вступай и узнавай как добывать криптовалюту
Сергей
Ох уж эти майнеры
Alexander
Ох уж эти спаммеры
👻
зачем оно тут
или майнер на yii2 :)
mr.
The Ant
Парни, вопросец. А вы как модуль дергаете в модуле? ну типа нужны настройки какие-то, которые заданы в конфиге модуля.
Yii::$app->getModule('myModule')->configParam
Типо того, в самом модуле.
Dmitriy
зачем так делать ? модули не для этого
Dmitriy
а так общение между модулей происходит через события
The Ant
а как делать? Грамотно. Я и спрашиваю.
The Ant
вот в конфиге бекенда допустим подключаю модуль. и к нему пару настроек
Dmitriy
Через события если только
The Ant
вот типо того:
'modules' => [
'backup' => [
'class' => 'backend\modules\backup\Module',
'defaultCharSet' => 'utf8',
'enableCompression' => true,
],
],
The Ant
в модели самого модуля эти настройки не дернуть никак
mr.
The Ant
ну такое себе )
mr.
Почти тоже самое что и ты показал)
mr.
xDebug в консоли активировать как? Нужно консольный контроллер отладить...
Niko
Привет!
Как правильно выходить из mysql в ubuntu??? Почему у меня висит столько процессов?
Niko
http://joxi.ru/zANMaL8fl6PW72
Borys
\q если мне не изменяет память
Niko
я это уже нашел, а как остальные закрыть? У всех столько висит в памяти или это я наоткрывал их, закрывая через ctrl+X?