gpt4 book ai didi

ruby-on-rails - 是否可以在 Rails 中更改 URL 中的 Controller 名称

转载 作者:行者123 更新时间:2023-12-05 08:34:58 27 4
gpt4 key购买 nike

我有一个 Controller

 emppedes

当我想在我看到的 url 中调用它时很好

localhost:3000/emppedes

并显示与之相关的全部内容。

但是我可以将这个 Controller 与 rails 中的其他名称匹配,这样当我点击它时,我可以像这样访问 URL

localhost:3000/employees

无需更改内部 Controller 但在 url 外部您可以看到。我的意思是我可以在某个地方编码吗

 `emppedes will display as employees in URL.`

这可能吗?可能是我的问题很愚蠢,但我想知道这是否可能。在编辑中,我有两个发送两个不同的 ID,在 Controller 中也为了更新我必须发送两个 ID。编辑我的代码就像

<%= link_to 'Edit', { :action => "edit",:id => @emppede.id,:ad => @id},:class=>"btn btn-success" %> |

因为我在 Controller 中有两个句柄和两个 id也更新一下

 @id= @emppede.ad

if @emppede.save
format.html { redirect_to :action => :index, :id => @emppede.ad }
format.json { render json: @emppede, status: :created, location: @emppede }

我如何在 Rails 路径格式中发送两个参数 :id 和 :ad?由于我的 Controller 是这样的

def index
@id = params[:id]
@data = Emppede.where(:ad => @id)
if @data.count > 0
@data.each do |data|
@ids= data.id
end
redirect_to :action => :show, :id => @ids, :ad => @id
else
redirect_to :action => :new, :id => @id
end
end

最佳答案

是的,您可以只指定用于任何给定资源的 Controller :

resources :employees, :controller => "emppedes"

或者,如果您更喜欢 Ruby 1.9 语法:

resources :employees, controller: "emppedes"

有关详细信息,请参阅 Rails Guide: Routing .

关于ruby-on-rails - 是否可以在 Rails 中更改 URL 中的 Controller 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13737240/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com