English 中文(简体)
为什么表单发布到错误的url?
原标题:Why is the form posting to the wrong url?

我的表单如下所示:

<%= form_for [:admin, @post] do |f|%>
<div style="width:660px;">
    <%= f.text_field  :title, :size => 150 %>
    <br/>
    <%= f.text_area :body, :id => "body", :rows => 15 %>
    <br/>
    <%= f.submit %>
</div>
<% end %>

当前url为:

http://localhost:3000/admin/posts/21/edit

我的管理员后期编辑的rake路线是:

edit_admin_post GET    /admin/posts/:id/edit(.:format)

由于某种原因,edit_admin_post_path正在返回:

/admin/post/the-post-title/edit

所以我手动将帖子标题更改为id。

当我执行更新时,我重定向:

if @post.update_attributes(params[:post])
      redirect_to edit_admin_post_path @post 
    end   

但它再次用帖子标题而不是id重定向。

为什么会这样?

这是3号轨道

注意:

对于show url,我想要/post/my post title,而不是/post/234,所以我不确定我在哪里更改了b/c,我在代码中没有看到它的参考

最佳回答

听起来你在你的后模型中定义了如下内容:

class Post < ActiveRecord::Base

def to_param
  #{name}"
end

这将导致它只返回名称而不是ID。删除您在post模型中定义的任何to_params,看看这是否解决了它。

将其更改为以下内容:

def to_param
  "#{id}-#{name}".downcase.gsub(/W+/, "-").gsub(/^[-]+|[-]$/,"").strip
end

这将为您提供相当干净的URL,例如:http://localhost:3000/admin/posts/21-我的帖子标题/edit和post.find(21我的帖子名称)的工作原理基本上与post.found(21)相同。

问题回答

暂无回答




相关问题
rails collection_select vs. select

collection_select and select Rails helpers: Which one should I use? I can t see a difference in both ways. Both helpers take a collection and generates options tags inside a select tag. Is there a ...

SSL slowness in EC2

We ve deployed our rails app to EC2. In our setup, we have two proxies on small instances behind round-robin DNS. These run nginx load balancers for a dynamically growing and shrinking farm of web ...

Auth-code with A-Za-z0-9 to use in an URL parameter

As part of a web application I need an auth-code to pass as a URL parameter. I am currently using (in Rails) : Digest::SHA1.hexdigest((object_id + rand(255)).to_s) Which provides long strings like : ...

RubyCAS-Client question: Rails

I ve installed RubyCAS-Client version 2.1.0 as a plugin within a rails app. It s working, but I d like to remove the ?ticket= in the url. Is this possible?

activerecord has_many :through find with one sql call

I have a these 3 models: class User < ActiveRecord::Base has_many :permissions, :dependent => :destroy has_many :roles, :through => :permissions end class Permission < ActiveRecord::...

Ordering a hash to xml: Rails

I m building an xml document from a hash. The xml attributes need to be in order. How can this be accomplished? hash.to_xml

Text Editor for Ruby-on-Rails

guys which text editor is good for Rubyonrails? i m using Windows and i was using E-Texteditor but its not free n its expired now can anyone plese tell me any free texteditor? n which one is best an ...

How to get SQL queries for each user where env is production

I’m developing an application dedicated to generate statistical reports, I would like that user after saving their stat report they save sql queries too. To do that I wrote the following module: ...

热门标签