Project

General

Profile

Actions

Bug #967

closed

bookmark fails if its name includes a "."

Added by Luke Baker almost 13 years ago. Updated almost 13 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Rails
Target version:
Difficulty:
Triaged:
Fixed in Releases:
Found in Releases:

Description

Added the bookmark "facts.architecture = x86_64". After this bookmark was added, I'm unable to view any bookmarks, instead the web server returns an HTTP 500. Here is a snippet from the production.log.

  1. Begin Snip ###########################

Rendering template within layouts/application
Rendering bookmarks/index

ActionView::TemplateError (edit_bookmark_url failed to generate from {:action=>"edit", :controller=>"bookmarks", :id=>"facts.architecture"}, expected: {:action=>"edit", :controller=>"bookmarks"}, diff: {:id=>"facts.architecture"}) on line #14 of app/views/bookmarks/index.html.erb:
11: </tr>
12: <% for bookmark in @bookmarks >
13: <tr class="<
= cycle("even", "odd") ->">
14: <td><
= link_to_if_authorized(h(bookmark.name), hash_for_edit_bookmark_path(:id => bookmark.name)) ></td>
15: <td><
=h bookmark.query ></td>
16: <td><
=h bookmark.controller ></td>
17: <td><
=h bookmark.public %></td>

app/helpers/application_helper.rb:113:in `link_to_if_authorized'
app/views/bookmarks/index.html.erb:14
app/views/bookmarks/index.html.erb:12:in `each'
app/views/bookmarks/index.html.erb:12
app/controllers/bookmarks_controller.rb:7:in `index'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_request_handler.rb:513:in `accept_and_process_next_request'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/classic_rails/application_spawner.rb:321:in `start_request_handler'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/classic_rails/application_spawner.rb:275:in `send'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/classic_rails/application_spawner.rb:275:in `handle_spawn_application'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/utils.rb:479:in `safe_fork'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/classic_rails/application_spawner.rb:270:in `handle_spawn_application'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server.rb:357:in `__send__'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server.rb:180:in `start'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/classic_rails/application_spawner.rb:149:in `start'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/spawn_manager.rb:219:in `spawn_rails_application'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/spawn_manager.rb:214:in `spawn_rails_application'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server_collection.rb:82:in `synchronize'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/spawn_manager.rb:213:in `spawn_rails_application'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/spawn_manager.rb:132:in `spawn_application'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server.rb:357:in `__send__'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
/usr/lib64/ruby/gems/1.8/gems/passenger-3.0.7/helper-scripts/passenger-spawn-server:99

Rendering /usr/share/foreman/public/500.html (500 Internal Server Error)

Actions #1

Updated by Ohad Levy almost 13 years ago

  • Category set to Rails
  • Assignee set to Ohad Levy
  • Target version set to 0.4

I can confirm it, this is caused by a failure to extract the bookmark id since it has space in its name.

nevertheless, the bookmark should be working already (you can see it at the host dropdown).

I'll send a patch tomorrow.

Actions #2

Updated by Ohad Levy almost 13 years ago

  • Subject changed from After adding bookmark, bookmarks page fails to load to bookmark fails if its name includes a "."
Actions #3

Updated by Ohad Levy almost 13 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100
Actions

Also available in: Atom PDF