Ruby on Rails 5.2 - ActionController::ParameterEncoding::ClassMethods

मॉड्यूल एक्शनकंट्रोलर :: पैरामीटरइन्कोडिंग :: क्लासमेथोड्स




ruby

मॉड्यूल एक्शनकंट्रोलर :: पैरामीटरइन्कोडिंग :: क्लासमेथोड्स

सार्वजनिक प्रवृत्ति के तरीके

Skip_parameter_encoding (क्रिया) स्रोत दिखाएं
# File actionpack/lib/action_controller/metal/parameter_encoding.rb, line 46
def skip_parameter_encoding(action)
  @_parameter_encodings[action.to_s] = true
end

निर्दिष्ट करें कि किसी दिए गए एक्शन के मापदंडों को सभी ASCII-8BIT के रूप में एन्कोड किया जाना चाहिए (यह UTF-8 के एन्कोडिंग डिफ़ॉल्ट को "स्किप करता है")।

उदाहरण के लिए, एक नियंत्रक इसे इस तरह उपयोग करेगा:

class RepositoryController < ActionController::Base
  skip_parameter_encoding :show

  def show
    @repo = Repository.find_by_filesystem_path params[:file_path]

    # `repo_name` is guaranteed to be UTF-8, but was ASCII-8BIT, so
    # tag it as such
    @repo_name = params[:repo_name].force_encoding 'UTF-8'
  end

  def index
    @repositories = Repository.all
  end
end

उपरोक्त नियंत्रक में शो कार्रवाई में सभी पैरामीटर मान ASCII-8BIT के रूप में एन्कोडेड होंगे। यह उस स्थिति में उपयोगी है जहां किसी एप्लिकेशन को डेटा को संभालना चाहिए लेकिन डेटा का एन्कोडिंग अज्ञात है, जैसे फ़ाइल सिस्टम डेटा।