CodeIgniter 4 में फॉर्म वैलिडेशन और फॉर्म सबमिट करने का उदाहरण सहित तरीका

⚡ स्मार्ट सारांश

CodeIgniter 4 फॉर्म वैलिडेशन, उपयोगकर्ता द्वारा दर्ज किए गए डेटा को प्रोसेस करने से पहले उसकी जाँच करता है। फॉर्म को फॉर्म हेल्पर की मदद से बनाया जाता है, और अंतर्निहित वैलिडेशन लाइब्रेरी आवश्यक, संख्यात्मक और is_unique जैसे नियम निर्धारित करती है, फिर त्रुटियाँ प्रदर्शित करती है और वैलिडेशन विफल होने पर स्टिकी फ़ील्ड को पुनः भरती है।

  • 📝 फॉर्म: फॉर्म के माध्यम से उपयोगकर्ता डेटा जमा कर सकते हैं, जिसे अक्सर डेटाबेस में सहेजा जाता है या ईमेल द्वारा भेजा जाता है।
  • 🧰 फॉर्म हेल्पर: form_open, form_input और form_submit जैसे फ़ंक्शन मानक-अनुरूप HTML उत्पन्न करते हैं।
  • दो मोर्चे: क्लाइंट-साइड सत्यापन तेज़ होता है; सर्वर-साइड सत्यापन सुरक्षित होता है और इसे दरकिनार नहीं किया जा सकता है।
  • 📏 नियम: set_rules आवश्यक, डेटा प्रकार, लंबाई, स्वच्छता और विशिष्टता जांच को परिभाषित करता है।
  • 🔁 चलाएँ: run() विधि किसी भी नियम के विफल होने पर false लौटाती है और सभी नियमों के सफल होने पर true लौटाती है।
  • ⚠️ त्रुटियाँ: validation_errors() उन फ़ील्ड्स के लिए संदेश प्रिंट करता है जो विफल रहे।
  • 📌 चिपकने वाले फॉर्म: set_value() गलत सबमिशन के बाद सही ढंग से दर्ज किए गए फ़ील्ड को पुनः भर देता है।

Codeइग्निटर फॉर्म सत्यापन

फॉर्म में Codeइग्नाइटर 4

फॉर्म उपयोगकर्ताओं को एप्लिकेशन के साथ इंटरैक्ट करने और डेटा सबमिट करने का एक तरीका प्रदान करते हैं। एक फॉर्म का उपयोग "हमसे संपर्क करें" फॉर्म के रूप में किया जा सकता है जिसे वेबसाइट पर आने वाला व्यक्ति भरकर हमें जानकारी भेज सकता है। प्राप्त जानकारी आमतौर पर डेटाबेस में संग्रहीत की जाती है या ईमेल के माध्यम से भेजी जाती है।

HTML फॉर्म संरचना

निम्नलिखित कोड एक सामान्य HTML फॉर्म की संरचना दिखाता है।

<form id="frmUsers" name="frmUsers" method="POST" action="create_user.php">
<input type="text" id="user_id" name="user_id">
<input type="password" id="password" name="password">

<input type="submit" value="Submit">
</form>

यहाँ:

  • … फॉर्म के ओपनिंग और क्लोजिंग टैग हैं। id और name एट्रिब्यूट फॉर्म का नाम और आईडी निर्दिष्ट करते हैं। method एट्रिब्यूट उपयोग किए जाने वाले HTTP वर्ब को निर्दिष्ट करता है, जो आमतौर पर POST होता है।
  • यह फॉर्म के तत्वों को निर्दिष्ट करता है। नाम विशेषता वह वेरिएबल नाम है जिसे प्रोसेसिंग के लिए बैकएंड सर्वर पर सबमिट किया जाता है।

Codeइग्नाइटर फॉर्म हेल्पर

एचटीएमएल को समझना और लिखना आसान है, लेकिन Codeआग लगनेवाला इससे चीजें और भी सरल हो जाती हैं। CodeIgniter में HTML फॉर्म बनाने के लिए अंतर्निहित फ़ंक्शन हैं। आइए निम्नलिखित पर विचार करें। Codeइग्नाइटर फॉर्म कोड जो फॉर्म हेल्पर का उपयोग करके फॉर्म बनाता है:

<?php
echo form_open('create_user.php', ['id' => 'frmUsers']);

echo form_label('User Id', 'user_id');
echo form_input(['name' => 'user_id']);

echo form_label('Password', 'password');
echo form_input(['type' => 'password', 'name' => 'password']);

echo form_submit('btnSubmit', 'Create User');

echo form_close();
?>

यहाँ:

  • echo form_open('create_user.php', ['id' => 'frmUsers']); यह फॉर्म का ओपनिंग टैग बनाता है, मेथड को POST पर सेट करता है और एक्शन सेट करता है। URL create_user.php फ़ाइल बनाने के लिए।
  • echo form_label('User Id', 'user_id'); user_id नामक इनपुट फ़ील्ड के लिए User Id लेबल बनाता है।
  • echo form_input(['name' => 'user_id']); user_id नाम का एक टेक्स्ट इनपुट फ़ील्ड बनाता है।
  • echo form_submit('btnSubmit', 'Create User'); 'Create User' लेबल वाला एक सबमिट बटन बनाता है।
  • echo form_close(); फॉर्म को बंद करता है।

जैसा कि आप देख सकते हैं, फॉर्म हेल्पर की मदद से प्योर PHP का उपयोग करके फॉर्म बनाना आसान हो जाता है। फॉर्म हेल्पर मेथड में एट्रीब्यूट पास करके, हम फॉर्म के लिए जेनरेट किए गए HTML को कस्टमाइज़ कर सकते हैं। ऊपर दिया गया कोड निम्नलिखित HTML फॉर्म कोड जेनरेट करता है:

<form action="http://localhost:3000/index.php/create_user.php" id="frmUsers" method="post" accept-charset="utf-8">
<label for="user_id">User Id</label>
<input type="text" name="user_id" value=""/>

<label for="password">Password</label>
<input type="password" name="password" value=""/>

<input type="submit" name="btnSubmit" value="Create User"/>
</form>

फॉर्म हेल्पर का उपयोग करने का सबसे बड़ा लाभ यह है कि यह HTML मानकों का पालन करते हुए अर्थपूर्ण रूप से सही कोड उत्पन्न करता है। आप आधिकारिक वेबसाइट देख सकते हैं। Codeअधिक जानकारी के लिए Igniter दस्तावेज़ देखें: https://codeigniter.com/user_guide/helpers/form_helper.html.

Codeइग्नाइटर फॉर्म उदाहरण

बुनियादी बातों को कवर करने के बाद Codeइग्नाइटर, चलिए वापस अपने ट्यूटोरियल प्रोजेक्ट पर आते हैं, जिस पर हम इस पूरे समय से काम कर रहे हैं। Codeइग्नाइटर ट्यूटोरियल श्रृंखलासंक्षेप में, यह ट्यूटोरियल प्रोजेक्ट एक संपर्क प्रबंधन ऐप बनाता है जो डेटाबेस में विवरण संग्रहीत करता है।

संपर्क बनाएं

पिछले ट्यूटोरियल में, हमने अपने एप्लिकेशन और सरल व्यू के लिए रूट बनाए थे। application/views/contacts/create.php फ़ाइल खोलें और create.php के कोड को निम्नानुसार संशोधित करें:

<div class="column">
<h2 class="title">Create Contact</h2>
<form action="<?= base_url('contacts/store') ?>" method="POST">
<div class="field">
<label class="label">Contact Name</label>
<div class="control">
<input id="name" name="name" class="input" type="text" placeholder="Type the contact name">
</div>
</div>
<div class="field">
<label class="label">Contact Number</label>
<div class="control">
<input id="name" name="name" class="input" type="text" placeholder="Type the contact number">
</div>
</div>
<div class="field">
<label class="label">Email Address</label>
<div class="control">
<input id="email" name="email" class="input" type="email" placeholder="Type the email address">
</div>
</div>
<div class="field is-grouped">
<div class="control">
<button class="button is-link">Save Contact</button>
</div>
</div>
</form>
</div>

नोट: ऊपर दिए गए कोड में फॉर्म बनाने के लिए सामान्य HTML का उपयोग किया गया है। आइए अब देखते हैं कि हमारा फॉर्म वेब ब्राउज़र में कैसा दिखता है। निम्नलिखित कोड लोड करें। URL अपने वेब ब्राउज़र में: http://localhost:3000/contacts/createयदि आप ट्यूटोरियल प्रोजेक्ट बना रहे हैं, तो आपको निम्नलिखित दिखाई देना चाहिए:

Codeइग्नाइटर में संपर्क फ़ॉर्म बनाएं

फॉर्म सत्यापन में Codeआग लगनेवाला

फॉर्म से डेटा संसाधित करते समय सत्यापन अत्यंत महत्वपूर्ण भूमिका निभाता है। मान लीजिए कोई उपयोगकर्ता किसी वेबसाइट पर पंजीकरण कर रहा है; हम यह सुनिश्चित करना चाहते हैं कि वह अपनी आवश्यक जानकारी और एक वैध ईमेल पता भरे। यदि हम दिनांक मानों के साथ काम कर रहे हैं, तो हम यह सुनिश्चित करना चाहते हैं कि दिनांक सीमाएँ वैध हों, इसलिए हम किसी ऐसे दिनांक को स्वीकार नहीं करेंगे जिसमें एक महीने में 32 दिन हों।

सत्यापन इन समस्याओं का समाधान करता है। Codeवेब एप्लिकेशन के साथ काम करते समय इग्नाइटर सत्यापन दो स्तरों पर किया जाता है।

क्लाइंट-साइड वैलिडेशन वेब ब्राउज़र में किया जाता है, आमतौर पर HTML के साथ। Javaस्क्रिप्ट। यह प्रदर्शन को बेहतर बनाती है क्योंकि सब कुछ क्लाइंट पर होता है, इसलिए सर्वर पर डेटा सबमिट करने की आवश्यकता नहीं होती है। नुकसान यह है कि उपयोगकर्ता का इस पर नियंत्रण होता है; यदि आप इस पर निर्भर करते हैं Javaस्क्रिप्ट को मान्य करने और उपयोगकर्ता को अक्षम करने के लिए Javaस्क्रिप्ट, आपका सत्यापन विफल हो जाएगा।

सर्वर-साइड सत्यापन सर्वर पर किया जाता है। इसका नुकसान यह है कि उपयोगकर्ता को सर्वर पर डेटा सबमिट करना होता है और प्रतिक्रिया की प्रतीक्षा करनी होती है, जिससे नेटवर्क संसाधनों का उपयोग होता है और प्रदर्शन प्रभावित हो सकता है। इसका प्रमुख लाभ बेहतर नियंत्रण और यह आश्वासन है कि उपयोगकर्ता द्वारा नियमों को अक्षम करने पर भी आपके सत्यापन नियम काम करते हैं। Javaस्क्रिप्ट।

बेहतर रणनीति यह है कि क्लाइंट-साइड वैलिडेशन को प्राथमिक रणनीति के रूप में और सर्वर-साइड वैलिडेशन को बैकअप तंत्र के रूप में उपयोग किया जाए।

फॉर्म सत्यापन नियम जोड़ना

CodeIgniter में एक अंतर्निहित सत्यापन लाइब्रेरी है। इस लाइब्रेरी को निम्न पंक्ति का उपयोग करके लोड किया जाता है:

$this->load->library('form_validation');

RSI Codeइग्निटर फॉर्म वैलिडेशन लाइब्रेरी निम्नलिखित में से कुछ क्रियाएं कर सकती है:

  • आवश्यक फ़ील्ड की जाँच करें। यह सबमिट किए गए मानों की जाँच करता है और यदि किसी आवश्यक फ़ील्ड में मान नहीं है तो त्रुटि दिखाता है।
  • डेटा प्रकार सत्यापन – कुछ फ़ील्ड में केवल संख्यात्मक मानों की आवश्यकता हो सकती है। यदि कोई गैर-संख्यात्मक मान पाया जाता है, तो लाइब्रेरी एक त्रुटि लौटाती है और फ़ॉर्म सबमिशन को रद्द कर देती है।
  • लंबाई सत्यापन – कुछ फ़ील्ड में वर्णों की एक निश्चित न्यूनतम या अधिकतम संख्या आवश्यक होती है। सत्यापन लाइब्रेरी ऐसे मामलों को संभालती है।
  • डेटा सैनिटाइजेशन – सुरक्षा के लिए लाइब्रेरी सबमिट किए गए डेटा से दुर्भावनापूर्ण कोड हटा सकती है। यदि सबमिट किए गए मानों में सक्रिय Javaस्क्रिप्ट या एसक्यूएल इंजेक्शन कोड की स्थिति में, यह लाइब्रेरी हानिकारक कोड को हटा देती है और उसे बेकार कर देती है।
  • डेटाबेस के अद्वितीय फ़ील्ड्स को मान्य करें – मान लीजिए आपके पास एक साइन-अप फ़ॉर्म है जिसमें ईमेल पते का उपयोग होता है, और आप यह सुनिश्चित करना चाहते हैं कि पता अद्वितीय है। यह लाइब्रेरी सबमिट किए गए डेटा को डेटाबेस टेबल और फ़ील्ड के साथ आसानी से जांचने की सुविधा देती है।

सत्यापन नियम निम्नलिखित प्रारूप का उपयोग करके निर्धारित किए जाते हैं:

$this->form_validation->set_rules('field','human readable field','rule',['custom message']);

यहाँ:

  • 'field' लाइब्रेरी द्वारा मान्य किए जाने वाले फॉर्म फ़ील्ड का नाम निर्दिष्ट करता है।
  • 'मानव पठनीय फ़ील्ड' फ़ील्ड के मानव-पठनीय प्रारूप को निर्दिष्ट करता है, जो त्रुटि होने पर उपयोगकर्ता को वापस प्रदर्शित होता है।
  • 'rule' लागू किए जाने वाले सत्यापन नियम को निर्दिष्ट करता है, जैसे कि आवश्यक, संख्यात्मक या न्यूनतम लंबाई।
  • ['कस्टम संदेश'] वैकल्पिक है और नियम विफल होने पर प्रदर्शित होने वाला एक कस्टम सत्यापन संदेश सेट कर सकता है।

निम्नलिखित एक है Codeसंपर्क नंबर को सत्यापित करने के लिए इग्नाइटर का उदाहरण:

$this->form_validation->set_rules('contact_number', 'Contact Number', 'required');

यहाँ:

  • ऊपर दिया गया कोड यह जांचता है कि contact_number फ़ील्ड में डेटा दर्ज किया गया है या नहीं। यदि यह फ़ील्ड खाली है, तो यह एक त्रुटि संदेश देता है जिसमें लिखा होता है कि संपर्क संख्या फ़ील्ड आवश्यक है।

निर्धारित नियमों के विरुद्ध सत्यापन चलाने के लिए, हम सत्यापन लाइब्रेरी के निम्नलिखित फ़ंक्शन का उपयोग करते हैं:

$this->form_validation->run()

यदि उपरोक्त कोड false लौटाता है, तो एक या अधिक निर्धारित नियम विफल हो गए हैं। यदि यह true लौटाता है, तो सभी सत्यापन नियम सफल हो गए हैं, और आप आगे की कार्रवाई कर सकते हैं।

आइए सत्यापन नियमों के कुछ और उदाहरण देखें। मान लीजिए कि आप कई फ़ील्ड, जैसे संपर्क नाम, नंबर और ईमेल पता, को मान्य करना चाहते हैं। आप निम्न कोड का उपयोग कर सकते हैं:

$rules = array(
array(
'field' => 'contact_name',
'label' => 'Contact Name',
'rules' => 'required'
),
array(
'field' => 'contact_number',
'label' => 'Contact Number',
'rules' => 'required',
'errors' => array(
'required' => 'You must provide a %s.',
),
),
array(
'field' => 'email_address',
'label' => 'Email Address',
'rules' => 'required'
)
);

$this->form_validation->set_rules($rules);

यहाँ:

  • ऊपर दिए गए उदाहरण में, हमने लाइब्रेरी के set_rules फ़ंक्शन के लिए नियमों के साथ फ़ील्ड्स का एक ऐरे प्रदान किया है। इससे कई फ़ील्ड्स को वैलिडेट करना आसान हो जाता है।

अद्वितीय सत्यापन

यदि हम संपर्क नंबर को सत्यापित करना चाहते हैं ताकि यह सुनिश्चित हो सके कि हम एक ही नंबर को दो बार सहेज न लें, तो हम निम्नलिखित नियम का उपयोग कर सकते हैं:

$this->form_validation->set_rules('contact_number', 'Contact Number','required|is_unique[contacts.contact_number]');

यहाँ:

  • | का उपयोग कई नियमों को एक साथ जोड़ने के लिए किया जाता है।
  • is_unique[contacts.contact_number] जाँचता है कि contact_number का मान डेटाबेस तालिका संपर्कों में contact_number फ़ील्ड मानों के विरुद्ध अद्वितीय है या नहीं।

फ़ॉर्म सत्यापन त्रुटि संदेश प्रदर्शित करना

यदि फॉर्म को प्रोसेस करने के दौरान कोई त्रुटि होती है, तो आप सत्यापन त्रुटियों को प्रदर्शित करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

<?php echo validation_errors(); ?>

यहाँ:

  • उपरोक्त फ़ंक्शन सभी त्रुटियों को लौटाता है जो घटित हुई हैं।

सबमिट किए गए फ़ॉर्म का डेटा भरना: स्टिकी फ़ॉर्म

कुछ फ़ॉर्म में कई फ़ील्ड होते हैं, और यदि कोई त्रुटि होती है, तो आप यह सुनिश्चित करना चाहते हैं कि सही ढंग से जोड़ा गया डेटा सुरक्षित रहे। सत्यापन लाइब्रेरी में निम्नलिखित कोड का उपयोग करके ऐसा करने के लिए तंत्र मौजूद हैं:

<?php echo set_value('field_name'); ?>

यहाँ:

  • ऊपर दिया गया कोड उपयोगकर्ता द्वारा दर्ज किए गए इनपुट को प्रदर्शित करता है।

वैलिडेशन लाइब्रेरी में उपलब्ध विधियों के बारे में पूरी जानकारी के लिए, आधिकारिक API दस्तावेज़ देखें। Codeइग्नाइटर उपयोगकर्ता मार्गदर्शिका: https://codeigniter.com/userguide3/libraries/form_validation.html.

Codeइग्निटर फॉर्म सत्यापन उदाहरण

इस ट्यूटोरियल श्रृंखला के दौरान, हम अपने ट्यूटोरियल प्रोजेक्ट, एक संपर्क प्रबंधन एप्लिकेशन में कोड जोड़ते रहे हैं। इस भाग में, हम वैलिडेशन लाइब्रेरी को लोड करेंगे और देखेंगे कि इसे वास्तविक दुनिया के उदाहरण में व्यावहारिक रूप से कैसे उपयोग में लाया जाए। स्टोर विधि को शामिल करने के लिए रूट्स कोड को निम्नानुसार संशोधित करें:

$route['default_controller'] = 'welcome';
$route['contacts'] = 'contacts';
$route['create'] = 'contacts/create';
$route['store'] = 'contacts/store';
$route['edit/:id'] = 'contacts/edit';
$route['update/:id'] = 'contacts/update';
$route['delete/:id'] = 'contacts/delete';
$route['users'] = 'welcome/users';

अब आइए कॉन्टैक्ट्स कंट्रोलर में फॉर्म वैलिडेशन लाइब्रेरी लोड करें और कुछ वैलिडेशन नियम सेट करें। कोड को नीचे दिखाए अनुसार संशोधित करें:

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Contacts extends CI_Controller {

public function __construct() {
parent::__construct();
$this->load->helper('url', 'form');
$this->load->library('form_validation');
}

public function index() {
$this->load->view('header');
$this->load->view('contacts/index');
$this->load->view('footer');
}

public function create() {
$this->load->view('header');
$this->load->view('contacts/create');
$this->load->view('footer');
}

public function store() {
$rules = array(
array(
'field' => 'contact_name',
'label' => 'Contact Name',
'rules' => 'required'
),
array(
'field' => 'contact_number',
'label' => 'Contact Number',
'rules' => 'required',
'errors' => array(
'required' => 'You must provide a %s.',
),
),
array(
'field' => 'email_address',
'label' => 'Email Address',
'rules' => 'required'
)
);

$this->form_validation->set_rules($rules);

if ($this->form_validation->run() == FALSE) {
$this->load->view('header');
$this->load->view('contacts/create');
$this->load->view('footer');
} else {
redirect(base_url('contacts'));
}
}

public function edit($id) {
$this->load->view('header');
$this->load->view('contacts/edit');
$this->load->view('footer');
}

public function update($id) {
$this->load->view('header');
$this->load->view('contacts/update');
$this->load->view('footer');
}

public function delete($id) {
$this->load->view('header');
$this->load->view('contacts/delete');
$this->load->view('footer');
}
}

यहाँ:

  • $rules = array(…) सत्यापन नियमों को परिभाषित करता है।
  • $this->form_validation->set_rules($rules); सत्यापन नियम निर्धारित करता है।
  • यदि ($this->form_validation->run() == FALSE) {…} सत्यापन नियमों को चलाता है, और यदि वे विफल होते हैं तो फॉर्म को सत्यापन त्रुटियों के साथ पुनः प्रदर्शित किया जाता है। यदि सत्यापन सफल होता है, तो हम संपर्क सूची पृष्ठ पर रीडायरेक्ट करते हैं। सामान्य परिस्थितियों में हम डेटा को डेटाबेस में लिखते हैं, जिसे हम अगले ट्यूटोरियल में करेंगे। डेटाबेस.

application/views/contacts/create.php में क्रिएट व्यू को नीचे दिखाए अनुसार संशोधित करें:

<div class="column">
<h2 class="title">Create Contact</h2>
<div class="notification is-danger">
<?php echo validation_errors(); ?>
</div>
<form action="<?= base_url('contacts/store') ?>" method="POST">
<div class="field">
<label class="label">Contact Name</label>
<div class="control">
<input id="contact_name" name="contact_name" class="input" type="text" value="<?php echo set_value('contact_name'); ?>" placeholder="Type the contact name">
</div>
</div>
<div class="field">
<label class="label">Contact Number</label>
<div class="control">
<input id="contact_number" name="contact_number" class="input" type="text" value="<?php echo set_value('contact_number'); ?>" placeholder="Type the contact number">
</div>
</div>
<div class="field">
<label class="label">Email Address</label>
<div class="control">
<input id="email_address" name="email_address" class="input" type="email" value="<?php echo set_value('email_address'); ?>" placeholder="Type the email address">
</div>
</div>
<div class="field is-grouped">
<div class="control">
<button class="button is-link">Save Contact</button>
</div>
</div>
</form>
</div>

यहाँ:

  • यह सत्यापन प्रक्रिया के दौरान होने वाली त्रुटियों (यदि कोई हो) को प्रदर्शित करता है।
  • यह पहले से दर्ज किए गए मान को सेट करता है, यदि कोई हो।

निम्नलिखित को लोड करें URL अपने वेब ब्राउज़र में, कोई भी मान दर्ज किए बिना "संपर्क बनाएं" पर क्लिक करें:

Codeइग्नाइटर फॉर्म सत्यापन त्रुटियाँ प्रदर्शित हुईं

अक्सर पूछे जाने वाले प्रश्न

क्लाइंट-साइड सत्यापन को अक्षम करके बायपास किया जा सकता है। Javaस्क्रिप्ट के माध्यम से या सीधे अनुरोध भेजकर। सर्वर-साइड सत्यापन उस स्थिति में चलता है जहां उपयोगकर्ता का कोई नियंत्रण नहीं होता है, इसलिए यह सुरक्षा की अंतिम विश्वसनीय पंक्ति है।

एक स्टिकी फॉर्म, set_value() का उपयोग करके, असफल सबमिशन के बाद उपयोगकर्ता द्वारा पहले से भरे गए फ़ील्ड को पुनः भर देता है। यह उपयोगकर्ता को पुनः प्रयास करने से बचाता है।ping जब केवल एक फ़ील्ड के कारण त्रुटि हुई हो तो डेटा मान्य होता है।

is_unique[table.field] सबमिट किए गए मान की डेटाबेस में मौजूद किसी कॉलम से तुलना करता है और यदि वह मान पहले से मौजूद है तो जाँच विफल हो जाती है। इसका उपयोग ईमेल या उपयोगकर्ता नाम जैसे फ़ील्ड के लिए किया जाता है, जिनमें दोहराव नहीं होना चाहिए।

हाँ। फ़ील्ड सूची से, AI आवश्यक, मान्य ईमेल और लंबाई नियमों के साथ-साथ कस्टम संदेशों के साथ सेट_रूल्स ऐरे उत्पन्न कर सकता है। Revअपने व्यावसायिक तर्क और डेटाबेस स्कीमा के आधार पर नियमों की समीक्षा करें।

यह फॉर्म हेल्पर मानक-अनुरूप HTML उत्पन्न करता है, एट्रिब्यूट को एस्केप करता है और फॉर्म को सुसंगत बनाए रखता है। यह set_value जैसे वैलिडेशन हेल्पर के साथ भी एकीकृत होता है, जिससे व्यू में दोहराव वाले मार्कअप को कम किया जा सकता है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: