ruby-on-rails - 如何使 Rails View .erb 文件打印 URL 的最后一部分?

标签 ruby-on-rails ruby dynamic

我是 Rails 的新手。我已经学会了如何制作静态 Controller Action 和相应的 View 文件。现在我想做到这一点,当我转到 localhost:3000/hi/anita 时,页面显示“Hi anita”,但是当我转到 localhost:3000/hi/bob 时,页面显示“Hi bob”。当然,我不想对 anita 和 bob 做出 Action 。你明白了。任何提示我该怎么做?谢谢!

最佳答案

我会定义路由以首先接受“最后一部分”,然后在操作中检索它:

# in routes.rb
# for rails 3:
match "/hi/:who" => "static#say_hi"
# for rails 2:
map.connect "/hi/:who", :controller => "static", :action => "say_hi"

# in StaticController
def say_hi
  @who = params[:who] || "No body" # as the user can use the url "/hi" without the "last part"
end

# in views/static/say_hi.html.erb
Hi <%= @who %>

关于ruby-on-rails - 如何使 Rails View .erb 文件打印 URL 的最后一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3930227/

相关文章:

ruby-on-rails - 本周的范围日期属性?

mysql - 安装 mysql2 gem

Ruby:使用 Object.send 分配变量

dynamic - Freemarker 读取动态属性

ruby-on-rails - ruby rails : Set fields in controller

ruby-on-rails - 使用适用于 Ruby on Rails 的 AWS CI/CI 流程进行部署

ruby-on-rails - 充电失败时检索 Stripe 充电 ID

ruby-on-rails - 我如何使用 Vim 插入 ERB 标签?

java - 使用用户输入创建新对象 [JAVA]

c# - 创建类时如何确定类的实例化名称