@rubyschool

Страница 180 из 921
Radzhab
23.05.2017
05:05:25
Dont repeat yourself

Да. Можно сказать и так

Nikolai
23.05.2017
05:24:57
Ребят а что указать на апворке если не учился в училищах и т.д ( ну кроме школки конеш)
Можно понаписать всё что тебе хочется. Проверять никто не будет

Adel
23.05.2017
05:45:09
hash["ключ"] = "значение" Так добавлять в ассоц. массив?

Google
Vladimir
23.05.2017
05:51:31
Если hash - переменная, да.

hash = {}; hash[:key] = 123

Nikolay
23.05.2017
05:57:50
hash = {}; hash[:key] = 123
Но тут ещё про символы

Adel
23.05.2017
05:57:50
Спасибо за ответы

Vladimir
23.05.2017
06:26:18
Другой вариант :)

Natalia
23.05.2017
07:27:16
Есть кто живой?

O
23.05.2017
07:27:44
?

Nikolai
23.05.2017
07:28:01
Райком закрыт, все ушли на фронт

Svetlana
23.05.2017
08:58:58
Наташа, кого ищешь? «Что мертво − умереть не может"».

Natalia
23.05.2017
09:00:10
ага, тип того

Klim
23.05.2017
09:59:03
Валар моргулис, в хату.

Google
Svetlana
23.05.2017
10:07:40
Объясните, пожалуйста, как технически вложенные контроллеры делать правильно, чтобы ничего не упустить. Я вчерашние две ссылки изучила внимательно. Как я себе представляю алгоритм сейчас: 1. В routes записать зависимости, например: resources :companies do resources :accounts, module: :companies end 2. Создать собственно папку со вложенным контроллером. 3. Контроллер создать вручную, код внутри весь тоже вручную. Что-то ещё надо добавлять? Есть какие-то генераторы для вложенных контроллеров? Я делала через generate controller - второго уровня, а третьего − не получилось уже.

Svetlana
23.05.2017
10:22:29
Спасибо. А вложение третьего уровня как добавлять?

вручную?

Klim
23.05.2017
10:24:37
лучше никак. серьезно.

Vitaly
23.05.2017
10:25:34
Спасибо. А вложение третьего уровня как добавлять?
Можно по аналогии сделать, еще модуль воткнуть и :namespace. Но это плохая практика и рекомендуется использовать два уровня максимум.

Svetlana
23.05.2017
10:26:08
Интересно. Спасибо.

Klim
23.05.2017
10:27:15
ты просто в роутах потом заблудишься.

Vitaliy
23.05.2017
10:59:27
Иерархия контроллеров (Хабр) - ссылка, которой я чаще всего делюсь в рельсовом (и около) сообществе. Маст-рид. В дополнение к ней также хорошо заходит How DHH Organizes His Rails Controllers. TL;DR: - В рельсовых контроллерах оптимально держать только CRUD-экшны (index new create show edit update destroy); - Если появляются нестандартные экшны - их стоит вынести в отдельный контроллер и сделать CRUD; - Как выносить и строить иерархию - описано в первой статье. Эти принципы я использую уже 2 года во всех боевых проектах. Несмотря на то, что первой статье уже 5 лет - подход до сих пор актуален. Хотя мне все же есть, чем его дополнить. Могу написать статью на тему. Интересно? Палец вверх.

Svetlana
23.05.2017
11:02:49
Ага, интересно.

Vitaliy
23.05.2017
11:04:34
Объясните, пожалуйста, как технически вложенные контроллеры делать правильно, чтобы ничего не упустить. Я вчерашние две ссылки изучила внимательно. Как я себе представляю алгоритм сейчас: 1. В routes записать зависимости, например: resources :companies do resources :accounts, module: :companies end 2. Создать собственно папку со вложенным контроллером. 3. Контроллер создать вручную, код внутри весь тоже вручную. Что-то ещё надо добавлять? Есть какие-то генераторы для вложенных контроллеров? Я делала через generate controller - второго уровня, а третьего − не получилось уже.
Сейчас могу кратко и очень поверхностно лишь сказать: 1. В роутах у меня такие конструкции scope module: companies do resources :accounts resources :companies end 2. В контроллерах такая иерархия controllers companies application_controller.rb accounts_controller.rb companies_controller.rb application_controller.rb 3. Да, все вручную, кроме генерации миграций я скаффолдами не пользуюсь ни для чего.

Svetlana
23.05.2017
11:04:37
Оуоуо У меня получилась вложенная страница

(Здесь танец победителя) а хелперы там надо? Они от родительского контроллера переходят, да?

Vitaliy
23.05.2017
11:06:22
хелперы, объявленные в helpers - общие для всего проекта хелперы, объявленные в контроллере, от которого наследуемся - действуют в наследнике тоже

Roman
23.05.2017
11:13:30
Ребят, кто пользовался rspec api doc, подскажите, как для него организовать авторизацию(devise token auth)?

Radzhab
23.05.2017
11:19:06
где можно достать самый полный capistrano файл

или может кто расшарит из гуру

Vitaliy
23.05.2017
11:21:40
https://github.com/gambala/gambala/blob/master/Gemfile https://github.com/gambala/gambala/blob/master/Capfile https://github.com/gambala/gambala/blob/master/config/deploy.rb https://github.com/gambala/gambala/blob/master/config/deploy/production.rb

Google
Radzhab
23.05.2017
11:23:37
forbidden_locations

что это(

Vitaliy
23.05.2017
11:25:11
url-ки, к которым проявляют повышенное внимание злоумышленники

стучатся по этим адресам, в надежде что наткнутся на уязвимость и внедрят вредоносный код в проект

я их перекрываю в nginx'е

https://github.com/gambala/gambala/blob/master/config/deploy/templates/nginx_conf.erb

location ~ (<%= fetch(:forbidden_locations).join('|') %>) { deny all; access_log off; error_log off; }

тут можно глянуть, какой из темплейта nginx_conf.erb получается результирующий nginx.conf, который отправляется капистраной на сервер.



Но это с учетом, что, например, включен и настроен ssl c https на сервере

Radzhab
23.05.2017
11:33:24
а в чем разница между deploy.rn

b

и production.rn

b

Vitaliy
23.05.2017
11:33:37
Про включение у меня тоже памятка есть (а внутри там - ссылка на пару статей по теме). Но для начала я рекомендую задеплоить без ssl: set :nginx_use_ssl, false



а в чем разница между deploy.rn
в deploy.rb - общие конфиги для любого деплоя в production.rb - дополнительные конфиги для деплоя production окружения

бывает, что в одном проекте помимо development test и production есть еще, например, staging, который должен деплоиться со своими особыми параметрами на отдельный сервер.

Тогда его конфиги сохраняем в staging.rb

и деплоим с помощью cap staging deploy

Google
Radzhab
23.05.2017
11:35:26
мм

не совсем понятно что за staging

Vitaliy
23.05.2017
11:36:28
крупные боевые проекты не льются сразу на прод

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

поэтому обновки заливаются сперва на staging-сервер, где прогоняются и тестируются ограниченным кол-вом пользователей (сотрудниками компании, например, или бета-тестерами)

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

Di
23.05.2017
13:23:44
Народ, напомните, а то помнил да забыл: Если запрос в контроллер пришел в JS формате (например у линка стоял атрибут remote: true) то по умолчанию отвечать он тоже будет в JS и при этом не будет рендерить layout, а будет искать соответствующий шаблон, верно?

Ну если respond_to не прописан никакой.

Vitaliy
23.05.2017
13:24:37
Да, все так

Если есть лайаут application.js.erb - заюзает его

Di
23.05.2017
13:26:17
АааА, вот в чем закавыка

У меня есть application.slim просто, я так понимаю эффект тот же если бы было application.js.slim

Vitaliy
23.05.2017
13:27:11
Нужно переименовать в application.html.slim

Di
23.05.2017
13:27:19
А то у меня лейаут в аякс лезет, не могу понять почему. Спасиб.

Vitaliy
23.05.2017
13:27:32
Тогда этот лайаут будет использоваться только в html

Di
23.05.2017
13:27:35
Да это легаси, страшновато трогать даже. :)

Обкостылил в контроллере render layout: false. Просто разобраться хотелось.

Di
23.05.2017
14:27:52
имхо лучше респонд прописать явно, если есть потребность отвечать не только в html
Да респондит он как надо и в чем надо, просто не мог понять откуда лейаут вылазил. И кстати, явно прописанный респонд в моей проблеме бы не помог.

Антон
23.05.2017
14:28:54
Че это? Репонд ту json и он вообще вьюхи трогать не будет

Google
Vitaliy
23.05.2017
14:50:59
но в случае с js будет

Nikolay
23.05.2017
15:57:10
рубаны, подскажите как сделать такое. Вот есть форма с селектом, которая по new заполняется по User.all например, и не проходит валидация. Как сделать чтобы create снова вызывал new, но уже с выбранным параметром?

можно в общих чертах

Alex
23.05.2017
16:04:28
у select есть опция selected value="", туда подставляешь значение из переменной

Denis
23.05.2017
16:05:23
remote: true

Alex
23.05.2017
16:06:03
но как это делается в форм билдере я не смотрел еще, я про чистый html

Nikolay
23.05.2017
16:08:17
про чистый знаю

но тут ведь рельсы

O
23.05.2017
16:18:22
В форм бюлдеры value: "текст"

Если не ошибаюсь

Аа в selected

Ошибся

Alex
23.05.2017
16:21:38
вообщем тут все описано :) https://stackoverflow.com/questions/24154064/rails-select-tag-not-pre-selected-after-forms-validation-fail

Страница 180 из 921