4 টি পাগল: আগে_ ফিল্টার বনাম


340

পাগল সালে> 4.0.0 জেনারেটর সঙ্গে টি ককটেলের অপারেশন সৃষ্টি before_actionনা before_filter। এটি একই জিনিস মনে হচ্ছে। তাহলে এই দুজনের মধ্যে পার্থক্য কী?

উত্তর:


521

আমরা পারেন দেখতে মধ্যে ActionController::Base, before_actionশুধু একটি হল নতুন সিনট্যাক্স জন্য before_filter

তবে সব before_filtersসিনট্যাক্স অবচিত হয় মধ্যে পাগল 5.0 এবং সরানো হবে পাগল 5.1


42
একদিকে হ্রাসের বুদ্ধি আছে তবে অন্যদিকে রেল এবং রুবিতে একটি পদ্ধতির জন্য বেশ কয়েকটি উপকরণ রাখার জন্য একটি ভাল অনুশীলন রয়েছে যাতে আপনি এটি অর্থের ক্ষতি ছাড়াই বিভিন্ন প্রসঙ্গে ব্যবহার করতে পারেন।
ফ্রিম্যানয়েড

4
৪.২-এ তারা এটিকে অবমূল্যায়ন করছে না, তবে হতাশ হওয়ার কারণে এটি ডক্স থেকে অপসারণ করছে। এজগুইডস.উরবায়নরইলস.আর.এইচ
onetwopunch

17
যদি এটি নিরুৎসাহিত হয়, তবে কেন আপনি এটিকে অবহেলা করবেন না ? সিলি।
গ্রান্ট বার্চমিয়ার

4
@ জনউইটলি - অবমূল্যায়ন এপিআই ভাঙবে না। হতাশার পুরো বিষয়টি এটি।
গ্রান্ট বার্চমিয়ার

9
@ জোহানভিটলি - স্প্যামিংটি একটি কারণ। যে কোনও সুশৃঙ্খল প্রজেক্টের অবহেলা ফাংশন ব্যবহার না করে অবমূল্যায়ন সতর্কতাগুলিকে সম্বোধন করা উচিত ।
গ্রান্ট বার্চমিয়ার

67

এটা ঠিক সিনট্যাক্স পার্থক্য পাগল মধ্যে টি ককটেলের আছে অ্যাপ্লিকেশন, এবং নাম ধরে সাত ক্রিয়া মূলত হয়, সূচক , নতুন , তৈরি , প্রদর্শনী , আপডেট , সম্পাদন করা , ধ্বংস

রেলস 4 এটিকে বিকাশকারীকে কাজের আগে ফিল্টার করার আগে সিনট্যাক্স পরিবর্তন করতে বিকাশকারীকে বান্ধব করে তোলে ।

এর আগে_অ্যাকশন কল পদ্ধতিটি আমরা যে ক্রিয়াগুলি ঘোষণা করি তার আগে কল করুন

before_action :set_event, only: [:show, :update, :destroy, :edit]

set_event একটি পদ্ধতি যা শো, আপডেট, সম্পাদনা এবং ধ্বংসের আগে সর্বদা কল করবে।


31

এটি কেবল একটি নাম পরিবর্তন। before_actionআরও নির্দিষ্ট, কারণ এটি কোনও ক্রিয়াকলাপের আগেই কার্যকর হয় exec


1

এর আগে_ফিল্টার / আগে_অ্যাকশন: মানে কোনও ক্রিয়াকলাপ কার্যকর হওয়ার আগে কোনও কিছু কার্যকর করা উচিত।

দুটোই এক। তারা একে অপরের জন্য কেবল উপনাম হিসাবে তাদের আচরণ একই।


-3

পূর্ব_অ্যাকশন এবং পূর্বের_ফিল্টারের মধ্যে পার্থক্য কী তা নির্ধারণ করার জন্য, আমাদের ক্রিয়া এবং ফিল্টারের মধ্যে পার্থক্য বুঝতে হবে।

ক্রিয়া এমন একটি নিয়ামকের একটি পদ্ধতি যেখানে আপনি যেতে পারেন। উদাহরণস্বরূপ, আপনার ব্যবহারকারীর তৈরি পৃষ্ঠাটি ব্যবহারকারীদের নিয়ন্ত্রণে নতুন # নতুন - এই রুটের ক্রিয়া।

ফিল্টারগুলি নিয়ন্ত্রক ক্রিয়াকলাপগুলির সাথে চালিত হয় - তার আগে, পরে বা তার আশেপাশে। এই পদ্ধতিগুলি কন্ট্রোলারের প্রতিটি ক্রিয়ায় পুনর্নির্দেশ বা সাধারণ ডেটা সেটআপ করে ক্রিয়া প্রক্রিয়াকরণ বন্ধ করতে পারে।

রেল 4 -> _অ্যাকশন

রেল 3 -> _ ফিল্টার

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.