আমি কীভাবে কাস্টম মডিউলটিতে টেবিল তৈরি করব


13

ড্রুপাল 7-এ আমরা hook_schema()একটি টেবিল তৈরি করতে। ইনস্টল ফাইলটিতে ব্যবহার করতাম। আমি বিশ্বাস করি যে, ড্রুপাল ৮-এ, আপনি এটিও করতে পারেন, তবে আমার ধারণা ছিল যে আপনার স্কিমার সাহায্যে আপনার .ml ফাইলগুলি তৈরি করা উচিত।

ড্রুপাল 8-এ সারণী তৈরির পদ্ধতি কী?


3
না, আপনি ঠিক বলেছেন। hook_schemaড্রুপাল 8 এ এখনও কাস্টম সারণী তৈরির উপায় যা সামগ্রী সত্ত্বা বা ক্ষেত্রগুলি দ্বারা বর্ণিত নয় । যদি আপনার কাস্টম টেবিলটি এমন কিছু হয় যা আপনি "বিষয়বস্তু" হিসাবে বিবেচনা করেন তবে আমি সত্তা ব্যবহার করব তবে যদি এটির দ্রুত হওয়া দরকার এবং সীমাবদ্ধ পরিমাণের সীমা থাকবে এবং আপনি সামনের প্রান্তে কোনও ক্যাশে করছেন না, তবে একটি কাস্টম টেবিল ভাল. আপনার এই টেবিলটি "কনফিগারেশন" কিনা তাও বিবেচনা করা উচিত, সেক্ষেত্রে কোনও কনফিগারেশন সত্তা বা অবজেক্ট যাওয়ার উপায়।
mradcliffe

উত্তর:


10

hook_schema()মডিউল থেকে ব্যবহৃত কাস্টম ডাটাবেস টেবিল তৈরি করতে ড্রুপাল 8 মডিউল থেকে এখনও ব্যবহৃত হয়। এমনকি ব্যবহারকারী ও নোড মডিউল তা বাস্তবায়ন, যদিও user_schema()এবং node_schema()নিজ নিজ সত্ত্বা, যা অন্যভাবে নির্মিত জন্য স্কিমা নির্ধারণ করে না।

কনফিগারেশন স্কিমা কাস্টম ডাটাবেস সারণি একটি মডিউল ব্যবহার তৈরি করতে ব্যবহার করা হয় না, কিন্তু কনফিগারেশন ফাইল কাঠামো বর্ণনা করা হয়েছে। আমি লিঙ্কযুক্ত ডকুমেন্টেশনে পাওয়া পিডিএফ ফাইলটি একটি কনফিগারেশন ফাইল এবং এর স্কিমার মধ্যে সম্পর্ক পরিষ্কার করে।

স্ক্রিনশট

সামগ্রী সত্তা ব্যবহার করে না hook_schema(); ড্রুপাল তাদের জন্য প্রয়োজনীয় ক্ষেত্রগুলির বিষয়বস্তু শ্রেণীর সংজ্ঞা দেয় এমন ক্ষেত্রগুলির ভিত্তিতে ডাটাবেস সারণি তৈরি করে।

কোন পদ্ধতিটি ব্যবহার করতে হবে তা মডিউলটি কী সংজ্ঞায়িত করে তার উপর নির্ভর করে। এটি মডিউলটি কোনও সামগ্রীর সত্তা, একটি কনফিগারেশন সত্তা, বা কেবলমাত্র একটি কাস্টম টেবিল ব্যবহার করে def একটি মডিউল এমনকি তাদের সমস্ত ব্যবহার করতে পারে।


9

আপনি সত্যই চাইলে নিজের টেবিলগুলি তৈরি করতে আপনি হুক ইনস্টল ব্যবহার করতে পারেন, যদিও দ্রুপালের কাছে বাক্সের বাইরে আরও অনেকগুলি সমাধান রয়েছে। তবে আপনি যদি নিজের নিজস্ব রোল করতে চান তবে উদাহরণ মডিউলে একটি উদাহরণ মডিউল আছে, যার নাম dbtng_example: https://www.drupal.org/project/exferences , আপনার কাস্টম ডেটাবেস এন্ট্রি যুক্ত এবং অপসারণের জন্য রাউটিং দিয়ে সম্পূর্ণ।

আমি এটি ইনস্টল করার এবং এটি ব্যবহার করে দেখার পরামর্শ দিই, তবে আপনি ড্রুপাল 8 এ নিজের ডাটাবেস টেবিল তৈরির ভিত্তি হিসাবে এটি ব্যবহার করতে পারেন।

বিবেচনার জন্য অন্য পদ্ধতির একটি কনফিগার সত্তা বা একটি সামগ্রী সত্তা তৈরি করা হয়।

আপনি যদি ড্রুপাল কমান্ড লাইন সরঞ্জামটি ব্যবহার করেন তবে এই "ড্রুপাল জেনারেট: সত্তা: কনফিগারেশন", এবং "ড্রুপাল জেনারেট: সত্তা: সামগ্রী" তৈরি করার জন্য একটি কমান্ডও রয়েছে।

উদাহরণস্বরূপ মডিউলটিতে কনফিগার_এনটিটি_সেম্পল এবং কন্টেন্ট_এন্টিটি_সেম্পল রয়েছে।

Https://www.preLivenext.com.au/blog/undersistance-drupal-8s-config-entities থেকে : "বিষয়বস্তু এবং কনফিগারেশন সত্তার মধ্যে প্রধান পার্থক্য হ'ল সেগুলি কীভাবে সংরক্ষণ করা হয় এবং (এই মুহুর্তে) কনফিগার সত্তা ক্ষেত্রযোগ্য নয় "।

বাক্সের সমাধানগুলির বাইরে আরও কিছু রয়েছে যেমন কনফিগার_পৃষ্ঠা মডিউল যা আপনাকে সহজেই আপনার সাইটে ডেটা সঞ্চয় করার জন্য জায়গা স্পিন করতে দেয়: https://www.drupal.org/project/config_pages

আমরা সম্প্রতি একটি নিয়ামক এবং রুট তৈরি করে এক ল্যান্ডিং পৃষ্ঠাগুলির জন্য এগুলি ব্যবহার করেছি। এটি একটি কাস্টম টেবিলের উপরে একটি বিশাল সুবিধা রয়েছে কারণ আপনি সহজেই নতুন ক্ষেত্র যুক্ত করতে পারেন এবং আপনি সহজেই চিত্র এবং সত্তার রেফারেন্সের মতো ডেটা ধরণের ব্যবহার করতে পারেন, আপনি ক্ষেত্র বিন্যাসগুলিও সেট করতে পারেন, এবং কনফিগারেশন পৃষ্ঠাগুলি সন্ধানী বিল্ডার ব্যবহার করে ফর্ম্যাট করা ডেটা লোড করতে পারেন।

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