Quick rake routes
12 November 2012
В больших проектах с кучей контроллеров, выполнение команды rake routes
может занимать много времени. В большистве проектов routes.rb банальный, без хитрой логики, поэтому если файл routes.rb не изменялся с последнего запуска, можно закешировать результат выполнения команды rake routes. Для использования, создайте файл, например /usr/local/bin/routes
(не забудьте дать права на исполнение) и добавьте в него код:
if [ -f config/routes.rb ]; then
recent=`ls -t config/routes.rb .routeslist\~ 2>/dev/null | head -n 1`
if [[ $recent != '.routeslist~' ]]; then
rake routes > .routeslist~
fi
cat .routeslist~ | grep "$1"
else
echo 'Routes file not found';
fi
Теперь при повторном запуске команды «routes», вы получите моментальный результат. Не забудьте добавить файл «.routeslist~», в который кешируется результат, в .gitignore
.
Передав аргумент, например «routes POST», к результатам будет применён grep и они будут отфильтрованы.
comments powered by HyperComments