module ActionController::ParameterEncoding::ClassMethods
def skip_parameter_encoding(action)
encoded as ASCII-8BIT. This is useful in the case where an application
The show action in the above controller would have all parameter values
end
end
@repositories = Repository.all
def index
end
@repo_name = params[:repo_name].force_encoding 'UTF-8'
# tag it as such
# `repo_name` is guaranteed to be UTF-8, but was ASCII-8BIT, so
@repo = Repository.find_by_filesystem_path params[:file_path]
def show
skip_parameter_encoding :show
class RepositoryController < ActionController::Base
For example, a controller would use it like this:
ASCII-8BIT (it "skips" the encoding default of UTF-8).
Specify that a given action's parameters should all be encoded as
def skip_parameter_encoding(action) @_parameter_encodings[action.to_s] = Hash.new { Encoding::ASCII_8BIT } end