嵌套路由表单正在执行索引操作的get请求,而不是create操作

时间:2013-10-21 12:11:23

标签: ruby-on-rails ruby

我有一个应用程序,我有这样的嵌套路由

resources :teams, shallow: true do
  resources :texts
  resources :translations
end

这是我的app / texts.show.html.erb.My应用程序有文本,每个文本都有翻译,每个翻译都属于一个文本。当我点击文本时,我被带到文本显示页面我在哪里翻译人员可以翻译文本。翻译人员可以翻译文本。每个翻译和文本属于一个团队,这样我就可以显示特定团队的特定文本和翻译。但是下面的表格似乎是对索引操作的获取请求那是我得到的错误,我无法弄明白为什么。也许是一件非常明显的事情,我不知道。

<% if current_user.translator %>
  <%= form_for [@team, @translation] do |f| %>
    <%= f.text_area :translation_text, :placeholder => 'Çeviri' %>
    <%= f.hidden_field :text_id, :value => params[:id] %>
    <%= f.submit 'Çevir', class: 'btn btn-primary' %>
  <%end%>
<%end%> 

这是我的translations_controller.rb文件

  def create
    team = Team.find(params[:team_id])
    @translation = team.translations.new(translation_params)
    @translation.user_id = current_user.id
    if @translation.save
      redirect_to request.original_url, success: 'Çeviri tamalandı'
    else
      redirect_to request.original_url, danger: 'Çeviri sırasında sorun oluştu lütfen tekrar dene'
    end
  end

  private

  def translation_params
    params.require(:translation).permit(:team_id, :text_id, :translation_text)
  end

问题可能是我在文本中#show并且我在表单上做错了吗?

0 个答案:

没有答案