【问题标题】:How do I create a config.ru file and a Rakefile?如何创建 config.ru 文件和 Rakefile?
【发布时间】:2015-07-19 19:58:04
【问题描述】:

我知道您通过在命令行中输入“bundle init”来创建 Gemfile。但是如何创建 config.ru 文件和 Rakefile?

【问题讨论】:

  • 轻松从其他 Rails 应用复制或通过模板生成新应用 rails new app

标签: ruby rackup


【解决方案1】:

Kristine,真正的问题不是如何,而是为什么你要创建它们。

这三个文件服务于三种不同的目的,并且没有一个文件是 Ruby 应用程序启动所必需的:

  • Gemfile(以及它的伴侣 Gemfile.lock,由第一个 bundle install 生成,应该和另一个一样安全地保存)——这是你的最常见面。

    它属于一个名为Bundler 的工具并由它使用。它是一个依赖管理工具。当您的应用程序需要其他一些名为“gem”的库时,您可以将其列在 Gemfile 中,然后在 bundle install 中列出,然后当您像 bundle exec ruby yourapp.rb 一样运行应用程序时,Bundler 将以这种方式处理环境,您的应用程序始终会获得与您设计的相同版本的 gem(这些版本实际上存储在 Gemfile.lock 文件中,您可以在那里查看)。

    您可以轻松地不使用 Bundler,但坚持使用某些 gem 版本通常是有意义的。这就是人们通常使用它的原因。我强烈建议您查看该工具的网站。

  • config.ru – 这对于 Web 应用程序很常见。这是一个机架配置文件。在 Ruby 世界 Web 服务器 API 中有一个广泛传播的称为 Rack。它支持将 Web 应用程序(如 Rails 应用程序或 Sinatra 应用程序)与底层 Web 应用程序服务器(如 Thin、Unicorn 或 WEBrick)解耦。

    虽然您当然可以create this on your own,但您当然不需要。在我必须实际执行此操作之前,我的 Ruby/Rails 经验已经走了很长一段路。通常,当您通过调用 rails new 创建一个新的 Rails 应用程序时,该文件会被引导。

    而普通的命令行 Ruby 应用程序根本不需要它。

  • Rakefile – 这又是一个相当广泛的野兽。 Makefile 用于makeRakefile 用于rake。 Rake 是一个 Ruby 工具,用于从命令行描述和调用某些任务。例如,当您执行bundle exec rake db:migrate 时,您实际上启动了一个由 Rakefile 描述的任务。

    您可以轻松地design your own tasks,但是当您开始使用 Rails 时,您通常不需要这样做。 rails new 为你删除一个 Rakefile 就足够开始了,除非你正在做一些真正的自定义(例如,应该涉及从命令行调用你的 Rails 应用程序代码),没有必要摆弄它.

    不用说,如果您正在做一些简单的 Ruby 控制台应用程序,它只会询问您的姓名并打招呼,那么您也不需要此文件。

希望这可以帮助您解决这个问题并顺利进入 Rails 世界!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-01
    相关资源
    最近更新 更多