
Knock
29.06.2017
18:30:18

Vadim
29.06.2017
18:30:32

Павел
29.06.2017
18:30:56
https://youtu.be/JbovJbKALzA

Knock
29.06.2017
18:31:03

Google

Павел
29.06.2017
18:31:36

Ivan
29.06.2017
18:31:52

Knock
29.06.2017
18:33:04
https://youtu.be/JbovJbKALzA
Не могу с ним не согласиться после того, как я отмучился. Удали nouveau -- будет здорово, говорили они. И начались танцы с бубнами. Поиск той единственной, которая поддерживает версию ABI 1.13 X.org'а.

Павел
29.06.2017
18:33:34

Knock
29.06.2017
18:34:03

Павел
29.06.2017
18:35:07
В смысле?
А прямом. Если что то не работает то скорее всего этот драйвер виноват

Vadim
29.06.2017
18:35:20

Knock
29.06.2017
18:35:24
Нихера подобного.

Павел
29.06.2017
18:35:46

Knock
29.06.2017
18:36:03
Ну а сам посуди, почему я должен срать кирпичами из-за того, что чертов драйвер поддерживает версию ABI 1.13 Xorg, начиная с 304.30? При этом СУКА 304.40 нихера не работает, весело да?

Vadim
29.06.2017
18:36:35

Google

Павел
29.06.2017
18:37:17

Vadim
29.06.2017
18:38:19

Павел
29.06.2017
18:39:42

Knock
29.06.2017
18:39:51
Вообще говоря, комедия еще в целом в том, что у нвидиа вот реально все через жопу. И драйвера через жопу, и внутри них нет никаких minimal requirements, хотя казалось раз сделал run архив, то будьте так любезны, а хуй тебе за щеку, как бы говорят разрабы. И фтп у них также через жопу не вовремя легло. Благо нашел зеркало со всеми версиями в гугле, но это прям повезло, так повезло. Что там еще? Ну и да Торвальдс сам за меня все сказал: Fuck you, Nvidia.

Павел
29.06.2017
18:42:16
Я тоже мучился ещё в далёком 200х лохматом каком то году
Правда тогда и на Винде приходилось искать драйвера. Ща честно не знаю надо или нет

Knock
29.06.2017
18:43:08
Ну щас там автодетектор, вся фигня
Виндоуздебилам даже трогать ничего не надо.
Нажал кнопку, и оно само сделалось.

Павел
29.06.2017
18:44:29

Knock
29.06.2017
18:44:40
Обнови ядро, говорили они. Будет весело, сказал я после обновления ядра.

Павел
29.06.2017
18:45:17
Сука
Правда пришлось его из исходников собирать

Knock
29.06.2017
18:45:40

Павел
29.06.2017
18:47:23
Да я про тебя ж)
Ну там предсказуемо что модуль надо пересобирать было под новую версию. А вот чота под новую версию ядра его не было. А там как раз серьезный был переход по версиям, не миноры.
Короче старый не заработал, нового нет

Google

Knock
29.06.2017
18:48:16
У меня так на работе предшественник развлекался

Павел
29.06.2017
18:48:55
Но вычитал что в нестабильной ветке ядра уже впилили поддержку железа этого. Вкрячил и радовался
Но это было так давно. Больше проблем не было. Пересел на убунту с опенсюзи и норм
Дрова проприентарные сами искались, сами ставились

Knock
29.06.2017
18:51:02
бох накажит))

Павел
29.06.2017
18:51:37
Это наименьший из моих грехов ?

Knock
29.06.2017
18:51:41
Ахахах

Павел
29.06.2017
18:52:35
Чот мы заофтопились совсем

Knock
29.06.2017
18:52:54
Ладно. Слишком много оффтопа. Теперь вопрос по теме. Тут у меня по сути требуется множественное наследование, а так как в пыхе низзя, то вопрос: а хорошо ли воспользоваться трейтами?

Павел
29.06.2017
18:53:35

Павел
29.06.2017
18:54:17
Но в Yii же есть behaviors

Knock
29.06.2017
18:54:36
Я видел. Ну они разве с этим справятся?
Просто смотри. Мне нужно запихнуть в класс, который отнаследовался от Model переменную из класса User.

Павел
29.06.2017
18:55:30
Ну надо конкретнее задачу знать. В принципе они и придумывались для этого
Давай подробности
Унаследовать напрямую от User нельзя?
Или User не наследуется от Model?

Google

Knock
29.06.2017
18:59:25
User наследуется от UserModel, а то от ActiveRecord, все четко.
Сейчас поясню задачу.
Фактически — рефакторинг кода.

Dmitriy
29.06.2017
19:00:04

Knock
29.06.2017
19:00:12
Сейчас поясню.
Не торопитесь, я печатаю медленней)

Павел
29.06.2017
19:01:02
Мы торопимся быстрее чем ты печатаешь

Knock
29.06.2017
19:06:20
есть куча моделей форм, но есть две, чей код полностью пересекается — создание пользователя из админки и просто из формы регистрации, там одинаковый практический код, плюс еще скоро появится почти такой же код для обновления данных пользователя из админки. по совету решил сделать базовый класс, а от него отнаследоваться для этих троих моделей форм. Но чтобы все работало, мне нужно в базовом классе форм иметь константу ADMIN_ROLE, а она находится в User. Наследовать от User'а базовый класс как-то не кошерно, поэтому задумываюсь о трейтах. Разве не верно?
Ненавижу так объяснять. Конечно, надо показывать код, но придется тогда сливать весь проект, а это такое.

Admin
ERROR: S client not available

Knock
29.06.2017
19:09:24
Вообще есть такой нюанс. Можно избежать в принципе трейтов, попросту чертову константу перенеся в checkAcessHelper, а потом ее там вызывать через self.
Но я так не хочу.
Я щитаю, что ей место именно в самой модели.
В конце коцнов в модели юзер у меня как раз и находится пресловутая role

Yura
29.06.2017
19:11:47
rbac бы прилепил эх(

Knock
29.06.2017
19:12:03
ну у меня что-то типа rbac
только мини
лол
одним файлом
классом точнее

Google

Павел
29.06.2017
19:13:29
Ну behavior тебе может помочь, но трейтами проще будет

Knock
29.06.2017
19:15:33
Я просто понимаю, что я чисто заморачиваюсь.
Но хочется сделать по красоте ж.


Павел
29.06.2017
19:16:32
Comparing Behaviors with Traits ¶
While behaviors are similar to traits in that they both "inject" their properties and methods to the primary class, they differ in many aspects. As explained below, they both have pros and cons. They are more like complements to each other rather than alternatives.
Reasons to Use Behaviors
Behavior classes, like normal classes, support inheritance. Traits, on the other hand, can be considered as language-supported copy and paste. They do not support inheritance.
Behaviors can be attached and detached to a component dynamically without requiring modification of the component class. To use a trait, you must modify the code of the class using it.
Behaviors are configurable while traits are not.
Behaviors can customize the code execution of a component by responding to its events.
When there can be name conflicts among different behaviors attached to the same component, the conflicts are automatically resolved by prioritizing the behavior attached to the component first. Name conflicts caused by different traits requires manual resolution by renaming the affected properties or methods.
Reasons to Use Traits
Traits are much more efficient than behaviors as behaviors are objects that take both time and memory.
IDEs are more friendly to traits as they are a native language construct.


Yura
29.06.2017
19:16:34
Дак нельзя тебе в коммон запихать основу формы?
и потом в фронте бэке расширить поменять?)

Павел
29.06.2017
19:16:55

Yura
29.06.2017
19:17:20
а ну я чет мимо читал =)
геттер?
)

Knock
29.06.2017
19:17:59

Павел
29.06.2017
19:18:02
Нефиг. Трейтом сильнее проще будет

Knock
29.06.2017
19:18:55

Yura
29.06.2017
19:19:44
а че надо то?)))))))))))

Knock
29.06.2017
19:19:49

Павел
29.06.2017
19:20:03
Чо там читать то?

Knock
29.06.2017
19:20:18

Павел
29.06.2017
19:20:39
А поведениями?

Dmitriy
29.06.2017
19:21:13

Павел
29.06.2017
19:23:00

Knock
29.06.2017
19:23:22
И поясню подробнее как у меня работает