আমি যখন ড্রুপাল form ফর্ম এপিআই ব্যবহার করে একটি মানক নির্বাচন বাক্স তৈরি করি তখন প্রথম মান (এটি একটি 'নতুন ফাঁকা ফর্ম' এ নির্বাচিত একটি )ও হয় <option selected="selected" value="">- Select -</option>
। এই মানটি ফর্ম সংজ্ঞায় নির্দিষ্ট করা হয়নি এবং আমি কোনও ফর্ম পরিবর্তন করেও করছি না। (এটা ঠিকাসে)
যাইহোক, আমি যখন দ্বিতীয়টি নির্বাচন বাক্স তৈরি করি যা প্রথমটি ব্যবহারের উপর নির্ভর করে #states
, তখন এর কোনও ডিফল্ট মান থাকে না। একাধিক নির্ভরতা সহ জটিল ফর্মগুলির জন্য এই অসঙ্গতিটি একটি সমস্যা।
উদাহরণস্বরূপ ফর্ম সংজ্ঞাটি নিম্নরূপ:
function sb_quickquote_test_form($form, &$form_state, $post=array()) {
$fields['first_select'] = array(
'#type' => 'select',
'#title' => 'First select box',
'#options' => Array('First', 'Second', 'Third'),
'#required' => TRUE,
);
$fields['dependent_delect'] = array(
'#type' => 'select',
'#title' => 'Dependent select box',
'#options' => Array('Something', 'Another thing', 'Something else', 'Final thing'),
'#states' => Array(
'visible' => Array('select[name=first_select]' => array('value' => '2')),
'required' => Array('select[name=first_select]' => array('value' => '2')),
),
);
$fields['submit'] = array(
'#type' => 'submit',
'#value' => t('Submit'),
);
return $fields;
}
এই সাধারণ উদাহরণে, আমাদের কাছে দুটি নির্বাচন বাক্স এবং একটি জমা বোতাম রয়েছে। দুটি নির্বাচিত বাক্স হিসাবে প্রদর্শিত হবে:
______________ ________________
| - Select - |v| | Something |v|
`--------------' `----------------'
| - Select - | | Something | <- no empty option
| First | | Another thing |
| Second | | Something else |
| Third | | Final thing |
-------------- ----------------
( #states
সেটিংসের কারণে, দ্বিতীয় নির্বাচন বাক্সটি কেবল তখনই প্রদর্শিত হবে যখন প্রথম নির্বাচিত বাক্সটি "তৃতীয়" নির্বাচিত হয়)
এই অসঙ্গতি এমন একটি পরিস্থিতিতে সমস্যা তৈরি করছে যেখানে আমরা আন্তঃনির্ভর ক্ষেত্রগুলি সহ জটিল গতিশীল ফর্মগুলি তৈরি করছি।
ক্ষেত্রগুলিকে কেন বেমানান বিকল্প দেওয়া হচ্ছে এবং সমস্যাটি সমাধান করার জন্য সর্বোত্তম পদ্ধতির কী তা কারও কি ধারণা আছে?