Я пишу учебник, где я воспроизвожу некоторые команды рельсов. На моей машине rails
и script/rails
работают одинаково хорошо. Есть ли "предпочтительная" форма? Какая из двух работ более универсальна?
Script/рельсы против рельсов
Ответ 1
Когда вы запускаете исполняемый файл rails
в приложении Rails 3, он ищет файл script/rails
и, если он присутствует, выполняет этот файл с аргументами, переданными в rails
.
Причина, по которой вы используете rails
over script/rails
, обычно сводится к тому, что она короче.
Еще одно замечание: там также команда rails c
, которая в приложении Rails 2 создаст папку приложения с именем c
внутри текущего каталога. Используя script/rails
, этого не произойдет; вместо этого он будет жаловаться, что script/rails
не существует.
Ответ 2
В Rails 3 это должны быть только рельсы.
Ответ 3
"rails" покажет все о использовании script:
Usage: rails COMMAND [ARGS]
The most common rails commands are:
generate Generate new code (short-cut alias: "g")
console Start the Rails console (short-cut alias: "c")
server Start the Rails server (short-cut alias: "s")
dbconsole Start a console for the database specified in config/database.yml
(short-cut alias: "db")
new Create a new Rails application. "rails new my_app" creates a
new application called MyApp in "./my_app"
In addition to those, there are:
application Generate the Rails application code
destroy Undo code generated with "generate"
benchmarker See how fast a piece of code runs
profiler Get profile information from a piece of code
plugin Install a plugin
runner Run a piece of code in the application environment
All commands can be run with -h for more information.
Ответ 4
Если вы используете Bundler, на самом деле безопаснее сказать
bundle exec rails
так как вы уверены, что используете версию рельсов, которая находится в вашем приложении. То же самое можно сказать и для
bundle exec rake
Ответ 5
В оконной консоли нам нужно написать ruby script/server но на Ubuntu script/server достаточно
рельсы s и рельсы c для rail3
Ответ 6
Вы должны писать только Rails не потому, что это предпочтительнее, а только потому, что он станет стандартом, отсюда. script/rails использовался в предыдущей версии рельсов, и теперь он устарел.
Однако обе команды имеют одинаковые эффекты в этот момент, вы ничего не можете сделать, используя рельсы вместо script/rails
Ответ 7
script/rails
доступен только в папке приложения проекта. В частности, использование этого приведет к прерыванию попытки ОС найти rails
из пути к среде и может вызвать ошибку (как на моем ПК). Чтобы создать новое приложение Rails, script/rails
не будет работать, но rails
будет. Я предлагаю вам придерживаться команды rails
.
Другие команды, такие как script/generate
, script/server
, script/console
, все становятся аргументами вызова rails
.
Ответ 8
В рельсах 3 это должно быть
rails
...
Ответ 9
rails s
или rails g scaffold
найдите script/rails
и просто передайте свои аргументы. rails
обычно предпочтительнее, потому что он короче и быстрее вводится. Однако, если кто-то пытается использовать rails s
или rails c
в приложении rails 2.X, он добавит другую папку приложения этого имени, так как команда rails в 2.X создает приложение.
Если ваша демонстрация предназначена для работы на Rails 3, используйте rails ...
только в том случае, если для более общего упоминания о том, что рельсы 2 используют script/server ...
not rails ...
Ответ 10
script/rails
для Rails 2. Rails 3 использует rails
. script/
команды не работают с моей установкой.
Ответ 11
сообщество rails отдает много возможностей, чтобы сделать жизнь проще разработчиков. Командные рельсы выполняют то же самое и используются многими разработчиками. По той же причине рельсы очень популярны.