rails - Pass id parameter on a link_to

前端 未结 2 1109
情歌与酒
情歌与酒 2020-12-08 20:02

I\'m trying to pass the parameter of the current page(id) to the next page so I can create a dependent model entry.

i.e. Projects have bids, bids belong to projects.

相关标签:
2条回答
  • 2020-12-08 20:38

    If your bids are not nested resource of the project, then you can add project_id as parameter to the path:

    <%= link_to "New Bid", new_bid_path(:project => @project.id) %>

    def new  
      @bid = Bid.new  
      @project =  Project.find(params[:project])  
    end
    

    otherwise:

    #routes.rb
    
    map.resources :projects do |project|  
      project.resources :bids
    end
    

    <%= link_to "New Bid", new_project_bid_path(@project) %>

    def new  
      @project =  Project.find(params[:project_id])    
      @bid = @project.bids.build  
    end  
    
    0 讨论(0)
  • 2020-12-08 20:44

    A good approach to this kind of problems, its to see what are you sending with the params. This can be done with debug.

    <%= debug params # or any variable%>
    

    With that information you will see (and learn) what kind of params are you sending to a controller.

    0 讨论(0)
提交回复
热议问题