@rubylang

Страница 1160 из 1684
Oleg
06.08.2017
14:53:23
Смерть
06.08.2017
16:04:21
Да там и так все очевидно было, я уже тогда хотел рубистом работать, а туда пошел потому что заманили зарплатой и проект обещали интересный. Правда я не знал, что за проект, пока не начал работать. В итоге я работал лениво и безответственно.

Google
Смерть
06.08.2017
17:04:38
Так сам виноват, чего сострадания искать из-за своих косяков.
С чего ты решил, что я сострадания ищу? Просто рассказал историю, не очень интересную

Смерть
06.08.2017
17:05:10
У кого?

spartakusQ
06.08.2017
17:09:07
У кого?
Накатил уже?

Смерть
06.08.2017
17:09:22
Что?

я вас не понимаю

Alex
06.08.2017
18:22:14
Ребят, прошу помощи Есть 3 модели: Юзер, Альбом, Трек Юзер может добавить в избранное либо альбом целиком, либо треки по отдельности. Часть с альбомами сделал HABTM. А вот с треками не могу догадатся.

Fedor
06.08.2017
18:23:27
НАВТМ это что?

Смерть
06.08.2017
18:23:39
а с треками почему так же не сделать?

можешь ту же джоин таблицу даже использовать

только тебе нужно будет тогда навернуть на нее тип ресурса, который связываешь

Alex
06.08.2017
18:25:07
has and belongs to many

Google
Alex
06.08.2017
18:25:50
Смерть, про тип ресурса не очень понял. Что это?

Смерть
06.08.2017
18:27:12
ну у тебя джоин таблица это что-то типа user_id, album_id, так?

Alex
06.08.2017
18:27:23
ага

Смерть
06.08.2017
18:28:06
можешь добавить в нее track_id, например

а можешь сделать user_id, resource_id, resource_type

Alex
06.08.2017
18:29:12
Попробую первый вариант Спасибо!

Lavrushchik
06.08.2017
19:31:02
вопрос. может кто-нибудь обьяснить разницу между include и extend? без отправления гугления и ссылки на статью на хабре?

Mark
06.08.2017
19:32:11
инклуд расширяет инстанс, экстенд - класс

если кратко

Lavrushchik
06.08.2017
19:33:48
с инклудом не оч понятно

Mark
06.08.2017
19:34:07
module ReusableModule def module_method puts "Module Method: Hi there!" end end class ClassThatIncludes include ReusableModule end class ClassThatExtends extend ReusableModule end puts "Include" ClassThatIncludes.new.module_method # "Module Method: Hi there!" puts "Extend" ClassThatExtends.module_method # "Module Method: Hi there!"

Lavrushchik
06.08.2017
19:35:28
extend позволяет вызвать напрямую из класса, без создания обьекта?

Mark
06.08.2017
19:35:38
да

Lavrushchik
06.08.2017
19:36:00
а инклюд только через созданный?

Mark
06.08.2017
19:36:11
ога

Lavrushchik
06.08.2017
19:36:18
о, спасибо, терь понял

Anton
06.08.2017
19:51:51
http://rubyblog.pro/2017/08/inversion-of-control-wtih-dry-container-for-hanami-events

Alex
06.08.2017
19:53:11
Застрял опять Добавил track_id в join таблицу Прописал отношения: Юзер habtm tracks и наоборот Но при отрисовке формы, получаю ошибку от pg: "отношение "users_tracks" не существует" В форме вот это: .field -Album.all.each do |album| =hidden_field_tag 'course[album_ids][]', nil =label_tag album.title, album.title =check_box_tag 'course[album_ids][]', album.id, @course.album_ids.include?(album.id), id: album.title -Track.where(album_id:album.id).each do |track| =hidden_field_tag 'course[track_ids][]', nil =label_tag track.name, track.name =check_box_tag 'course[track_ids][]', track.id, @course.track_ids.include?(track.id), id: track.name

Что вообще почитать по подобной задаче? Казалась несложной, а сижу уже несколько часов.

Google
Lavrushchik
06.08.2017
19:56:41
А почему без гугления?)
ибо гуглил и слова мудрёные) пока что)

Re-L
06.08.2017
19:57:09
Нужно ли проверять данные на наличие запрещенных тэгов при записи в БД, или достаточно вызывать sanitize во view при выводе?

Aleksey
06.08.2017
20:01:18
ибо гуглил и слова мудрёные) пока что)
Ну, надо комплексно подходить к вопросу, книгу взять. Иначе получишь упрощенные ответы.

Lavrushchik
06.08.2017
20:01:55
Aleksey
06.08.2017
20:03:07
Суть она как раз будет в конце вникания :)

Alex
06.08.2017
21:17:41
я подумал, что достаточно будет первой тогда добавлять в первую track_id было бессмысленно, так?

pny
06.08.2017
22:41:22
я подумал, что достаточно будет первой тогда добавлять в первую track_id было бессмысленно, так?
http://v32.rusrails.ru/active-record-associations/hasandbelongstomany-association-reference habtm - означает что есть промежуточная таблица

Amir
07.08.2017
05:00:05
Привет ребята Кто нибудь подскажет, можно ли обойтись без гема safe_attributes У меня есть сторонная БД на майскл Сделал соответсвующие модели и настроил коннект но есть пара траблов таблицы с полями 'type' что не понравилось рельцам зафигачил в модели self.inheritance_column = nil вроде пашет но всеравно в некоторых таблицах пишет ошибку, но уже другую ActiveRecord::DangerousAttributeError: errors is defined by Active Record. Check to make sure that you don't have an attribute or method with the same name. вроде тупо вылечил через гем safe_attribues но мне не нравиться, я же незнаю что он там еще делает за кулисами

и давно не обновлялся

Fedor
07.08.2017
05:16:33
и использовать их параллельно не слишком хорошая идея, потом все это может очень некрасиво начать конфликтовать между собой

Amir
07.08.2017
05:16:55
согласен, но разработчики на пхп с этим не согласятся

и будут называть свои поля как им вздумается

Fedor
07.08.2017
05:17:15
а в эту базу еще кто-то пишет, или уже нет?

вполне можно просто базу переделать

Amir
07.08.2017
05:17:33
это вообще сторонная база

Fedor
07.08.2017
05:20:38
тогда можно попробовать отказаться от AR, использовать ROM, становящийся модным нынче, или сиквел

Google
Fedor
07.08.2017
05:20:44
но это уже обрезание рельс

или вместо моделей собирать классы с подключением отдельных модулей из AR но это тоже какое-то извращение

Amir
07.08.2017
05:23:15
а алиасинг полей нету? допустим пусть в БД будет поле 'type' AR пусть думает что это поле my_type

Fedor
07.08.2017
05:26:06
алиасинг то есть, но тоже будет в рамках AR, тоесть он по прежнему будет использовать поле type а все говорить, что это my_type

Admin
ERROR: S client not available

Fedor
07.08.2017
05:26:21
можно на самом деле просто убить эту ошибку

посмотреть откуда она вызывается в коде AR, и заманкипатчить этот метод в каком-нибудь модуле

и подключать его потом в пересекающихся моделях

хотя тоже решение не очень, просто заткнуть рот валидатору

но гем safe_attributes делает именно это

def instance_method_already_implemented?(method_name) begin return super(method_name) rescue ActiveRecord::DangerousAttributeError return true end return false end end

https://github.com/bjones/safe_attributes/blob/master/lib/safe_attributes/base.rb

https://github.com/rails/rails/blob/15ef55efb591e5379486ccf53dd3e13f416564f6/activerecord/lib/active_record/attribute_methods.rb#L87

вот так оно в AR райзится

собственно вот этот dangerous_attribute_method? можно замьютить

Nikita
07.08.2017
05:43:28
Ребят, а можно ли как-то через контроллер рисовать попап поверх вьюхи? То есть рисуется вьюха определенного экшна, а поверх нее попап через ApplicationRouter

Сам попап - это .html.erb

Marat
07.08.2017
05:49:01
А можно подробнее? Что хотите получить в результате?

тут кажется нужно на js делать

может поможет http://devdocs.io/rails~5.1/actionview/helpers/capturehelper#method-i-content_for

Google
Nikita
07.08.2017
05:49:51
Та можно на ты

В ApplicationRouter обрабатывается нужно ли рисовать попап или нет, ну и соответственно нужно рисовать его

Самым нормальным способом

Amir
07.08.2017
06:30:50
Нужно сканировать документ прямо со сканера, в браузере. и прикрепить в поле file

нашел scanner.js https://asprise.com/document-scan-upload-image-browser/web-scanner-source-code-open-order.html вроде платный Есть альтернативные бесплатные?

Fedor
07.08.2017
06:57:58
https://ru.wikipedia.org/wiki/TWAIN

http://www.dynamsoft.com/blog/document-imaging/build-web-page-scan-documents-to-pdf/#_Step_3

сам не делал, но scanner.js - это имплементация этого протокола, можно и самому написать, если денег жалко

или поискать по free TWAIN js library

Ребят, а можно ли как-то через контроллер рисовать попап поверх вьюхи? То есть рисуется вьюха определенного экшна, а поверх нее попап через ApplicationRouter
Надо понимать, как происходит обработка запроса клиентом. По сути ты делаешь запрос, router определяет, какой контроллер должен его обработать и отдает этому контроллеру, контроллер рендерит вьюху и возвращает ее пользователю

пользователь получает кусок HTML со скриптами и картинками

popup вылезает динамически после загрузки всего этого добра в бразуер средствами JS

либо ты сразу вставляешь этот попап в открытом виде поверх окна

но это не самое красивое решение

соответсвенно ты можешь сделать во вьюхе кусок с условным оператором, который либо рендерит этот попап либо нет. И сделать js который на .ready будет показывать окно, если найдет

Страница 1160 из 1684