ruby on rails - Rails params ব্যাখ্যা?



ruby-on-rails (4)

Rails পার্শ্বে, params একটি পদ্ধতি যা একটি ActionController::Parameters বস্তু প্রদান করে। https://stackoverflow.com/a/44070358/5462485 দেখুন

https://ffff65535.com

কেউ রেল নিয়ামক মধ্যে params ব্যাখ্যা করতে পারে: তারা কোথা থেকে আসে, এবং তারা কি উল্লেখ করা হয়?

  def create
    @vote = Vote.new(params[:vote])
    item = params[:vote][:item_id]
    uid = params[:vote][:user_id]
    @extant = Vote.find(:last, :conditions => ["item_id = ? AND user_id = ?", item, uid])
    last_vote_time = @extant.created_at unless @extant.blank?
    curr_time = Time.now
  end

আমি এই কোডটি লাইন-বাই-লাইন পড়তে এবং কী হচ্ছে তা বুঝতে সক্ষম হতে চাই।


অন্যরা যেমন উল্লেখ করেছে, params মানগুলি GET অনুরোধের প্রশ্নোত্তর স্ট্রিং থেকে, অথবা POST অনুরোধের ফর্মের তথ্য থেকে আসতে পারে, কিন্তু তারা যেখান থেকে আসতে পারে তার তৃতীয় স্থানও রয়েছে: URL এর পথ।

আপনি হয়ত জানেন যে, রেলগুলি তাদের সংশ্লিষ্ট নিয়ামক ক্রিয়াকলাপগুলিতে সরাসরি অনুরোধ করার জন্য রুট নামে কিছু ব্যবহার করে। এই রুটে URL গুলি থেকে বের করা এবং params সেগুলিকে থাকতে পারে। উদাহরণস্বরূপ, যদি আপনার মত একটি রুট থাকে:

match 'products/:id', ...

তারপরে http://example.com/products/42 মত একটি URL এ একটি অনুরোধ params[:id] থেকে 42 সেট করবে।


প্যারামিটার পরামিতি নিম্নলিখিত তিনটি গ্রুপ রয়েছে:

  1. ব্যবহারকারী সরবরাহ পরামিতি
    • GET ( প্যারামগুলি সেট করবে [: প্যারামি 1] এবং প্যারামস [: প্যারামি 2])
    • POST (উদাহরণস্বরূপ JSON, এক্সএমএল স্বয়ংক্রিয়ভাবে পার্সগুলিতে প্যারাস করা এবং সংরক্ষণ করা হবে)
    • দ্রষ্টব্য: ডিফল্টরূপে, ব্যবহারকারীরা সরবরাহকৃত প্যারামিটারগুলিকে সদৃশ করে এবং ব্যবহারকারীদের কন্ট্রোলারের মধ্যে তাদের সংরক্ষণ করে [ব্যবহারকারী]], wrap_parameters সেটিংস দিয়ে পরিবর্তিত হতে পারে
  2. রাউটিং পরামিতি
    • match.r match '/user/:id' রুট.আরবিতে প্যারাম্ সেট করবে [id]
  3. ডিফল্ট পরামিতি
    • params[:controller] এবং params[:action] সর্বদা উপলব্ধ এবং বর্তমান নিয়ামক এবং কর্ম রয়েছে

মূলত, পরামিতি ব্যবহারকারী অ্যাপ্লিকেশন নির্দিষ্ট তথ্য অ্যাপ্লিকেশন।

যখন আপনি কোনও ফর্ম পোস্ট করেন, তখন আপনি সাধারণত জিইটি অনুরোধের বিরোধিতায় POST অনুরোধের সাথে এটি করেন। GET অনুরোধ হিসাবে আপনি স্বাভাবিক রেলের অনুরোধগুলি মনে করতে পারেন, যখন আপনি সাইটটি ব্রাউজ করেন, এটি সাহায্য করে।

যখন আপনি একটি ফর্ম জমা দেন, তখন নিয়ন্ত্রণটি অ্যাপ্লিকেশনটিতে ফেরত পাঠানো হয়। আপনি ফর্ম জমা দিয়েছেন মান আপনি কিভাবে পেতে পারি? params কিভাবে হয়।

আপনার কোড সম্পর্কে। @vote = Vote.new params[:vote] নতুন @vote = Vote.new params[:vote] ডেটা ব্যবহার করে ডেটাবেসে নতুন ভোট সৃষ্টি করে [[ভোট]। জমা দেওয়া আপনার ফর্ম ব্যবহারকারীর নামে নামকরণ করা হয়েছে: ভোট, এর সব তথ্য এইখানে রয়েছে: হ্যাশের ভোট ক্ষেত্র।

পরবর্তী দুটি লাইন আইটেম পেতে ব্যবহৃত হয় এবং uid ব্যবহারকারী ফর্ম জমা দেওয়া হয়েছে।

@extant = Vote.find(:last, :conditions => ["item_id = ? AND user_id = ?", item, uid])

নতুন, বা সর্বশেষ সন্নিবেশিত, ডাটাবেস থেকে আইটেম item_id = আইটেম এবং user_id = uid দিয়ে ভোট পায়।

পরবর্তী লাইন শেষ ভোট সময় এবং বর্তমান সময় লাগে।





ruby