প্রক্রিয়া_লগিন নামে একটি কাস্টম মডিউলের অংশ হিসাবে নীচের ফাংশনটি প্রক্রিয়া_লগিন.ইনস্টল-এ অন্তর্ভুক্ত রয়েছে। মডিউলটি যদি আমি ম্যানুয়ালি ডেটাবেস টেবিলটি তৈরি করি তবে কাজ করে তবে স্বাভাবিকভাবেই আমি টেবিলটি স্বয়ংক্রিয়ভাবে ইনস্টল করতে চাই।
ফাংশনটি নিজেই মডিউলটি ইনস্টল করার ক্ষেত্রে স্কিমা ত্রুটি তৈরি করে না। তবে এটি ড্রুপাল 7 মাইএসকিউএল ডাটাবেসে ডাটাবেস টেবিল প্রক্রিয়া_লগিন_ নিবন্ধ তৈরি করে না।
আমি দেখতে পাচ্ছি এমন অন্য কোনও ত্রুটি বা সাইট রিপোর্ট দ্বারা রিপোর্ট করা সমস্যা নেই।
আমি এটি পুরোপুরি সরিয়েছি এবং বহুবার পুনরায় ইনস্টল করেছি। আমি ওয়েবটি ব্যাপকভাবে অনুসন্ধান করেছি এবং ড্রুপাল বিকাশের বিষয়ে আমার দুটি বইয়ের পরামর্শ নিয়েছি। আমি এই ফাংশনটির সাথে কোনও ভুল দেখতে পাচ্ছি না (নীচে তালিকাভুক্ত)।
দ্রষ্টব্য: আমি 'আইডি' সিরিয়াল হিসাবে সংজ্ঞায়নের চেষ্টা করেছি কিন্তু একই ফলাফল পেয়েছি (যেমন কোনও সারণী তৈরি হয়নি)।
আমি ধারণা করে ফেলেছেন। কেউ কি জানেন যে এই ফাংশনটি কেন কাজ করছে না?
function process_login_schema(){
$schema['process_login_register'] = array(
'description' => 'Register a specific computer with the system.',
'fields' => array(
'id' => array(
'description' => 'Primary identifier.',
'type' => 'int',
'unsigned' => TRUE,
'size' => 'normal',
'not null' => TRUE,
'default' => 0,
),
'ip' => array(
'description' => "The user's IP address at registration.",
'type' => 'varchar',
'length' => 32,
'not null' => TRUE,
'default' => '',
),
'user_agent' => array(
'description' => "The user's browser user agent string at registration.",
'type' => 'varchar',
'length' => 255,
'not null' => TRUE,
'default' => '',
),
),
'primary key' => array('id'),
);
return $schema;
}
hook_enable()
। মডিউল ইনস্টল করা কেবলমাত্র এটি আনইনস্টল করার পরে (আনইনস্টল ট্যাব ব্যবহার করে বা ডেভেল / পুনরায় ইনস্টল করা) কাজ করা যেতে পারে, তার পরে মডিউলটির দ্বারা তৈরি সমস্ত টেবিল মুছে ফেলা হবে। তারপরে আপনি যখন মডিউলটি ইনস্টল করবেন, তখন আপনি hook_install()
যেমনটি প্রত্যাশা করতেন তেমন চালানো হয়