Borys
Любопытно почему
👀
я тут писал длинный текст, объясняющий работу связей в yii2, но решил сделать проще
who are you
ну дык ты посмотри что он там генерит на уровне sql запроса))
👀
Ap::find()->joinWith('groupProfile')->where(['groupProfile.slug' => 'zavod']); ты на 100% уверен что у тебя в joinWith('groupProfile') будет таблица groupProfile?
👀
я-бы не был так уверен, даже если в Ngpv написано такое название таблицы
👀
yii может где-то что-то обозвать каким-то алиасом
👀
а так - ты указываешь, что для таблицы, которая используется в связи groupProfile нужно использовать алиас gp
👀
и используешь его в where вместо названия таблицы, так как алиас - это, грубо говоря, ссылка на таблицу
SiZE
если кому интересно: zend предлагает формы использовать сразу для вывода и обработки данных то есть, ты создаёшь форму не как в yii, как модель с данными, а описываешь сразу какой элемент будет какого вида (например, Zend_Form_Element_Text или Zend_Form_Element_Select), прописываешь фильтры\валидаторы, а в конце концов делаешь вывод формы как строки (те echo $form) во вьюхе получается не очень окей, ибо стилизацию вывода тоже прописываешь в форме как "декораторы" я использовал стандартную логику форм только в плане создания модели данных, допилил, чтобы можно было использовать на одной странице больше одной формы (проще говоря - formName[fieldName] - кто знает, тот поймёт), ну и хелпер для вывода отдельного элемента формы - типа как в yii $form->field(), только в zend'е у меня это $this->formField()) костыльно, да, но всё же удобней, чем по умолчанию предлагает zend
Вы не верно поняли формы в Й. Форма там не модель с данными.
SiZE
Есть ActiveForm который может использовать модель с данным
SiZE
И есть объект поля.
👀
Да, я знаю
👀
Я имел ввиду под формой прослойку между AR и выводом пользователю
SiZE
В зенде был билдер форм на сколько я помню, который можно было использовать с моделью
👀
Может во втором Найти для первого зенда что то, во что можно было бы положить логику работы с AR мне не удалось
SiZE
В первом
SiZE
Я с ним лет 5 назад работал, сейчас не вспомню уже что к чему было
👀
По секрету скажу так, что в одном нашем проекте, которым пользуется самый крупный украинский интернет магазин зендовые формы используются только для валидации данных Обработка данных и их сохранение происходит в экшнах
👀
Но я его не писал)
Alejandro
Парни, существует ли способ отловить вызываемую функцию, чтобы переопределить, типа как для классов отлов метода __ call($fmethod)
Alejandro
Есть приложение, апи которого формируется с помощью функций, типа module_funcname()
Sergey
какой php?
Alejandro
И этих функций в файле надо городить штук 50. Хочу на классы переписать
Alejandro
5.6
Sergey
тебе известно название функции?
Alejandro
Неа, в том то и дело
Alejandro
Если бы было известно, ранкитом можно было бы переопределить
Alejandro
вы можете добавить логику "перехвата" в самой ф-ии
это то понятно, но тогда пропадает смысл всей затеи)
Alejandro
Видимо так и придется делать. Обхявлю объект в начале файла, и в функциях уже буду его вызывать
Dmytro
лучше закиньте все 50 ф-ий в какой-то класс
Alejandro
лучше закиньте все 50 ф-ий в какой-то класс
я это и хочу. Но апи приложения вызывает именно функции, собирая имя функции из параметров, и повлиять я на это не могу, так как приложение безбожно закриптовано ионкубом
Иван
я это и хочу. Но апи приложения вызывает именно функции, собирая имя функции из параметров, и повлиять я на это не могу, так как приложение безбожно закриптовано ионкубом
Хватать исключения на несуществующие функции, сохранять куда-то, фигачить такую функию/заглушку. Повторить до победного. :)
Иван
Ток будет потом иногда всплывать что-нибудь всё равно
Alejandro
Хватать исключения на несуществующие функции, сохранять куда-то, фигачить такую функию/заглушку. Повторить до победного. :)
😃тоже была такая мысль =) Написать обработку ошибок пхп, если в ошибке фигурирует имя функции, то выхывать соответствующий метод класса
Alejandro
но тут еще есть другой момент. Приложение проверяет, есть ли функция, перед ее вызовом
Иван
может неймспейсами обмануть можно
Alejandro
ладно, я уже начал писать все нужные функции а в них уже вызываю методы нужного класса. Только вот пришлось класс делать синглтон
Alejandro
может неймспейсами обмануть можно
наврядли получится. Они в глобальной ОВ
Alejandro
да ладно, пофик, я уже начал))
Иван
да ладно, пофик, я уже начал))
я как-то с такими словами начал пилить проект на том, что для него совсем не подходило Года через полтора закончил. От того на чём пилил мало что осталось 😆
Alejandro
Просто нет того красивого решения, какое хотелось бы использовать) Буду хардкодить нужные функции, а в них вызывать инстанс моего класса
Alejandro
Тут еще руководство такое, они до сих пор в 2007 году живут и кодят соответственно так же
Alejandro
Я ООП втихаря пишу) Ох заябуццо они когда я уйду)))
Иван
Я ООП втихаря пишу) Ох заябуццо они когда я уйду)))
"Ничё ж не понятно! Классы-уясы. Что ту происходит то? Ещё и на англицом всё, едрить-колотить."
Alejandro
"Ничё ж не понятно! Классы-уясы. Что ту происходит то? Ещё и на англицом всё, едрить-колотить."
Именно так) Летом я ухожу на аутсорс к ним, там уже тз готовится. И в тз будет четко прописано писать всё в процедурном стиле. Там придется изъебнуться
Амаль
WP
Alejandro
Не, там проект не такой
Alejandro
не бложик, сложная архитектура, управление серверами, дц и прочей поеботой
Иван
Именно так) Летом я ухожу на аутсорс к ним, там уже тз готовится. И в тз будет четко прописано писать всё в процедурном стиле. Там придется изъебнуться
Ладно бы ещё в процедурном. Небось классы и в роли структур нельзя, только ассоциативные массивы, только хардкор!
Alejandro
Да вот думаю тоже, всё самому писать будет бред, тем более я один. Потом с ними порешаем всё таки, либо пошлю их найух
Alejandro
А никто не работал с whmcs?
Dmitriy
Работал
Alejandro
Работал
забыл че хотел по нему спросить
Alejandro
Работал
Вспомнил. Там в вендорах лежит Illuminate/Container. Его как-то в модулях можно использовать? Например зарегистрировать какой-то синглтон и использовать в разных модулях
Alejandro
Он вообще приложением используется где-то?
Alejandro
в документации на его счет нет ничего
Alejandro
откуда эти параметры берутся?
названиеМодуля_функция В папке модулей лежит папка модуля. название модуля - название папки. Там же должен лежать файл с таким же названием как и папка, то есть название модуля. В этом файле нужно/можно прописывать необходимые функции, например function mymodule_FunctionName($params) {} Приложение сканит модули, потом сопоставляет название модуля и нужные приложению функции. например, она подключила файл модуля и проверяет, есть ли функцйия mymodule_FunctionName, если есть, то вызывает эту функцию
Sergey
насоздавай все функции в цикле
SiZE
Где-то был пример использования ActiveRecord для хранения справочных данных вместо таблицы в БД. Кто-то помнит может ссылку?
Anonymous
Всем привет. Может кто сталкивался с такой проблемой: в AppAsset указываю public $sourcePath = '@app/assets/мой-путь'; после это го перестаёт подключатсья бутстрап из public $depends
Артур
всем привет))
Артур
</script><script src="/assets/e542e404/jquery.js"></script> <script src="/assets/js/dist/jplayer/jquery.jplayer.min.js"></script> <script src="/assets/js/radio.js"></script>
Артур
подключил скрипты)
Артур
а выбрасывает ошибку
Артур
jPlayer is not a function
Артур
<script src="/assets/js/radio.js"></script> мой скрипт
Anonymous
ты прям так руками их подключаешь? :)
Anonymous
в шаблоне?
Артур
$("#jquery_jplayer_1").jPlayer({ на эту строку)
Артур
с помощью
Артур
assets
Артур
прописываю
Артур
создал свой файл TestAssets.php