【发布时间】:2016-07-01 23:20:45
【问题描述】:
我在 Rails 5 beta 3 中遇到 gem 作为可标记的问题。
project.rb:
class Project < ActiveRecord::Base
acts_as_taggable
acts_as_taggable_on :skills
end
routes.rb
get 'tags/:skill', to: 'projects#index', as: :skill
projects_controller.rb:
class ProjectsController < ApplicationController
def index
if params[:category] && Category.exists?(params[:category])
@category = Category.find(params[:category])
@projects = @category.projects.order("projects.created_at DESC")
elsif params[:skill]
@projects = Project.tagged_with(params[:skill])
else
@projects = Project.all
end
@categories = Category.all
end
end
在线@projects = Project.tagged_with(params[:skill])我收到以下错误:
ArgumentError:参数数量错误(给定 2,预期 1)来自 /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.beta3/lib/active_record/sanitization.rb:8:in `消毒'
【问题讨论】:
-
可能是params[:skill] 持有技能标签数组?
-
我检查了 tagged_with('ios')。同样的错误
标签: ruby-on-rails ruby ruby-on-rails-5