প্রোগ্রামিয়ালি একটি অ্যাকশন সেট কার্যকর করুন (বিধি মডিউল)


23

আমি কিছু ক্রিয়াকলাপ সংজ্ঞায়িত করতে বিধি UI ব্যবহার করতে চাই, তবে কাস্টম মডিউল থেকে প্রোগ্রামিকভাবে সেই ক্রিয়াগুলি সম্পাদন করতে চাই।

কীভাবে আমি কোড দ্বারা ক্রিয়াটি সম্পাদন করব এবং প্রয়োজনীয় যুক্তিগুলি (এই ক্ষেত্রে কেবল একটি নোড) পাস করব pass

ধন্যবাদ!

উত্তর:


26

যদি আপনি এটিকে কোনও নিয়ম উপাদান হিসাবে সেট আপ করেন তবে আপনি ব্যবহার করতে পারেন rules_invoke_componentবিকল্প হিসাবে আপনি কোনও ইভেন্ট শুরু করতে পারেন, যা ব্যবহার করে একাধিক নিয়মকে ট্রিগার করতে পারে rules_invoke_event

উভয়ই একইরকম যে আপনি প্রথমে একটি নাম / আইডি পাস করেন এবং বাকী আরোগুলি পাশ দিয়ে যায়, তাই এর মতো কিছু

 rules_invoke_component('name', $node);

যদি আপনার কাস্টম উপাদান নিয়মের কয়েকটি প্যারামিটার থাকে তবে সেগুলি একে একে পাস করে এবং উদাহরণ হিসাবে কমা দিয়ে তাদের পৃথক করে

rules_invoke_component('rules_save_search_send_activation_sms',  'paramval1', 'paramval2', ....);

আপনার এটি কীভাবে করা দরকার তা সঠিকভাবে। এটি আবার নিয়ম / উপাদানটি কীভাবে সংজ্ঞায়িত এবং কনফিগার করা হয় তার উপর নির্ভর করে।


ধন্যবাদ, আমি ঠিক সেই ফাংশনটি খুঁজছিলাম। আমাকে সরাসরি তর্কটি পাস করতে হয়েছিল, যদিও - সম্ভবত কারণ আমি কেবল একটি উপাদানটিতে একটি আর্গ কনফিগার করেছি। rules_invoke_component('rules_mycomponent', $node);
ভালডেরাম

@ ওয়াল্ডেরামা, দুর্দান্ত অন্যদেরও যদি একই তথ্যের প্রয়োজন হয় তবে আমি আমার উত্তর আপডেট করেছি।
googletorp

এটি ড্রুপাল 6 এর জন্য কাজ করে?

@ ল্যান্ডিংয়ের নিয়মগুলি 6 থেকে 7 থেকে অনেক পরিবর্তন হয়েছে, তবে 6 টিতে rules_invoke_eventবিদ্যমান rules_invoke_componentনেই, তবে আমি বিশ্বাস করি না যে 6 এর নিয়মে উপাদানগুলির ধারণা রয়েছে।
googletorp

আপনার যদি কাস্টম নিয়ম অনুসারে থাকে, একের পর এক প্যারামিটারগুলি পাস করুন এবং সেগুলি কমা উদাহরণ দিয়ে আলাদা করুনrules_invoke_component('rules_save_search_send_activation_sms', 'test ', '93333333333');
ইউসুফ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.