【发布时间】:2019-08-20 01:28:40
【问题描述】:
新手请多包涵。我了解 Rails 如何通过 GET 为简单的 URL 链接(如 localhost:3000/rooms/11/listing)提供简单的请求。格式很简单,如 Routes 表中所述。但是,当涉及到 PATCH、PUT、DELETE 和 CREATE 时,我感到很困惑。例如,当我单击“保存”按钮时,以下带有参数的输出是。我的问题是,当我单击 SAVE 按钮时,Rails 生成的实际 URL 是什么?
Started PATCH "/rooms/11" for 127.0.0.1 at 2019-08-20 05:25:32 +0800
(0.8ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
↳ /usr/local/rvm/gems/ruby-2.6.0/gems/activerecord-5.2.2/lib/active_record/log_subscriber.rb:98
Processing by RoomsController#update as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"JHiCJ6HoTsgd8SGgLTFiZ9+J9hS9U8hHGvjKf4Lz3uieQ8OO2eFqFEM/D5xocHp/Nd3eA0az9k+okrmNe65BYg==", "room"=>{"home_type"=>"Apartment", "room_type"=>"Private", "accommodate"=>"3", "bed_room"=>"4", "bath_room"=>"3"}, "commit"=>"Save", "id"=>"11"}
我从控制台知道
app.room_path(11)
=> "/rooms/11"
这是 Rails 生成的 URL localhost:3000/rooms/11{"utf8"=>"✓", "authenticity_token"=>"JHiCJ6HoTsgd8SGgLTFiZ9+J9hS9U8hHGvjKf4Lz3uieQ8OO2eFqFEM/D5xocHp/Nd3eA0az9k+okrmNe65BYg==", "room"=>{"home_type"=>"Apartment", "room_type"=>"Private", "accommodate"=>"3", "bed_room"=>"4", "bath_room"=>"3"}, "commit"=>"Save", "id"=>"11"}?
【问题讨论】:
-
如果您使用 Chrome 并想要检查请求,您可以打开开发者工具,选择网络选项卡,然后选中“保留日志”框。单击保存按钮,对 /rooms/11 的请求将显示在列表中,其中包含各种有用的信息。
标签: ruby-on-rails ruby rack