
Dmitry
27.04.2017
08:03:57
я этим заморочился потому что у меня сейчас немного странная задача стоит из родительского класса вызывать методы наследника. И я пытаюсь понять механику как руби будет их эти методы там находить. и как лучше их вызыват ькак методы экземпляров или как методы класса.

Natalia
27.04.2017
08:04:58
Ты же вроде уже задавал этот вопрос и мы тогда решили, что что-то тут с логикой не так, что у тебя появляется такая нужда

Dmitry
27.04.2017
08:06:11
есть класс который представляет собой перечень методов(они же действия с роутером)
методы для всех роутеров одинаковые

Google

Evgeniy
27.04.2017
08:06:25

Dmitry
27.04.2017
08:06:54
а вот код который понимают роутеры разных вендоров - разный
вот у нас есть класс в который идут данные, а из методов этого класса дергаются методы из библиотек - микротик, длинк, циско.
если есть более логичный подход, буду рад услышать.
кстати не помню хвастался или нет но меня перевели на проект где используется rails api only + angular + nodejs
никаких больше говнофреймворков самописных

Natalia
27.04.2017
08:09:09
Почему у тебя данные идут в базовый класс?

Dmitry
27.04.2017
08:09:44
чтобы ангуляр не переписывать сто раз
один раз настроили куда слать данные и все.
ангуляр же не знает какой там у нас роутер.

Natalia
27.04.2017
08:11:23
У тебя есть дерево. Ты из него сделал стул, стол и табуртку. И пытаешься сидеть на дереве. Как-то так это выглядит.

Dmitry
27.04.2017
08:12:19
ну нет
для примера пользователь ввел имя вай фай сети blablabla angular шлет нам что то типо ssid => blablabla

Google

Dmitry
27.04.2017
08:13:42
а вот микротик там, асус или циско ему не ведомо.
поэтому как я сразу буду отсылать в mikrotik.rb если это asus.rb ?
база то у нас в rails

Natalia
27.04.2017
08:16:00
http://www.railstips.org/blog/archives/2009/05/11/class-and-instance-methods-in-ruby/

Dmitry
27.04.2017
08:16:52
в первом примере такое же приложение как я написал)

Natalia
27.04.2017
08:17:05
да-да

Dmitry
27.04.2017
08:18:27
у нас правда все это в одном модуле будет находится.

Natalia
27.04.2017
08:21:44
Так. Ну ты же определяешь как-то методы какого наследника вызывать, так?
Вместо этого ты можешь сразу передаваться на нужный класс, разве нет?
Вот нашла у нас что
Базовый генератор, в который приходит запрос
Он имеет всего 2 метода класса
Один определяет по данным на какой дочерний генератор нужно передать и второй собственно делает это.

Dmitry
27.04.2017
08:25:05

Natalia
27.04.2017
08:26:49
rails

Dmitry
27.04.2017
08:27:28
вот думаю в этом есть некая разница, я сам пока еще не привык что api это своя атмосфера.

Natalia
27.04.2017
08:28:04
А в чем проблема-то? Это вообще чисто рубишная часть, по-моему.
Тут вообще много чего не ruby-way сделано.

Dmitry
27.04.2017
08:29:19
проблема в том что в ангуляре данные отправляются куда то конкретно

Google

Dmitry
27.04.2017
08:29:40
я отправляю их в класс который решает какую либу использовать.

Natalia
27.04.2017
08:29:55
Ну и отправь их дальше в дочерний через него

Dmitry
27.04.2017
08:30:29
но половина данных одинаковая для всех роутеров

Natalia
27.04.2017
08:30:47
И что?
Дочерний класс знает родительские методы

Dmitry
27.04.2017
08:31:35
в базовом классе поэтому есть метод в котором формируется все что одинаково, потом выбирается либа с коммандой.
в дочернем классе только сама команда роутеру.
вопрос то был не в этом, а в том использовать методы дочернего класса или методы экземпляра дочернего класса

Nikolay
27.04.2017
08:33:05

Natalia
27.04.2017
08:35:00
По ссылке выше написано. So when would you use a class method? Class methods are for anything that does not deal with an individual instance of a class.
Это не очень логично прост.

Dmitry
27.04.2017
08:35:41
что имеено

Natalia
27.04.2017
08:36:15
Суть же наследования в том, что дочерний класс получает все методы родителя и может еще дописать свои или переписать какие-то из них.

Dmitry
27.04.2017
08:36:43
наследование нам тут ни к чему к слову.

Natalia
27.04.2017
08:36:51
Так если дочерний класс обладает полным нужным функционалом, почему бы ни использовать его?

Dmitry
27.04.2017
08:37:09
в либах просто комманды роутера.
там просто столько же методов но методы там

Natalia
27.04.2017
08:37:57
"задача стоит из родительского класса вызывать методы наследника". Так наследование или не наследование?

Dmitry
27.04.2017
08:38:04
def change_staff_pass
@command = [
'/interface/wireless/security-profiles/set',
"=.id=gyc-staff-wlan",
"=wpa-pre-shared-key=#{staff_pass}",
"=wpa2-pre-shared-key=#{staff_pass}",
"=mode=dynamic-keys",
"=authentication-types=wpa2-psk",
'/quit'
]
end

Google

Dmitry
27.04.2017
08:38:34
я просто все это прям вот сейчас делаю, только сейчас понял что оно это наследование особо там и не к чему)

Natalia
27.04.2017
08:39:50

Dmitry
27.04.2017
08:57:08
щас я допишу что у меня происходит и скину тебе gist просто я видимо объяснить не могу просто)

Nikolay
27.04.2017
09:52:51
а подскажите как задать свое имя связи в модели типа в билете будет начальная и конечная станция и они указывают на одну таблицу станции
belongs_to :writer, class_name: 'Author' вот так наверно?
в модели

Vitaliy
27.04.2017
09:53:13
да

Nikolay
27.04.2017
09:53:58
спасибо!
а вот как это в миграции это описать не написано
t.belongs_to :railway_station, :start_station, index: true вот так наверно?

Natalia
27.04.2017
12:07:12
Господа. Есть массив. Нужно убрать из него 2 значения из середины. Как сделать это красиво и компактно?
потому что там вокруг с этим масивом еще куча всего происходит и не хотелось бы это размазывать

Oleg
27.04.2017
12:09:32
https://ruby-doc.org/core-2.2.0/Array.html#method-i-delete_at
подойдёт?

Natalia
27.04.2017
12:10:00

Henry
27.04.2017
12:10:38
попробуй слайс
типо arr.slice!(range)

Natalia
27.04.2017
12:12:53

Henry
27.04.2017
12:13:20
ну я не знаю какие именно тебе убрать надо, но можно и так) попробуй в консольке

Natalia
27.04.2017
12:14:19
не, так это не работает

Google

Natalia
27.04.2017
12:14:46
Нашла способ разобрать его на шаг раньше

Vladimir
27.04.2017
12:19:17
Добрый день.
Друзья, подскажите. Делаю сайт для спортивного клуба. Мне нужно сделать админку через которую уже клиент может менять расписание, тренеров, заливать фотографии сам, заливать видео, менять контакты. То есть мне надо сделать ему удобный интерфейс.
Что для этого лучше использовать?
Или писать админку с нуля самому лучше?

Natalia
27.04.2017
12:19:32
Если кому интересно
массив этих массивов мапаю не с 1 элементом, а с 6
.map! do |a, b, c, d, e, f|
потом беру только нужные значение и добавляю что нужно

Vladimir
27.04.2017
12:21:46
А при чем тут бутстрап?
Я не про фронт-енд емую ввиду

Vitaly
27.04.2017
12:22:02

Vladimir
27.04.2017
12:22:33

Vitaly
27.04.2017
12:24:58
На GitHub есть описание. Установка в минуту. Интеграция с devise и cancancan. Подходит для active record и mongoid

Roman
27.04.2017
12:25:48

Vladimir
27.04.2017
12:41:14
Спасибо

✂️
27.04.2017
16:17:46
вчера только все работало

Vitaly
27.04.2017
16:18:33
Написано, что бот был заблокирован пользователем
попробуй ключики перегенерить или погуглить конкретно эту ошибку

Konstantin
27.04.2017
16:25:50

Klim
27.04.2017
16:33:40
без фара, просто в cmd, так же?

Konstantin
27.04.2017
16:34:43
да
так же

Klim
27.04.2017
16:40:28
предположу что засада в перекодировке из вин в ютф.