În lumea dinamică a dezvoltării web, Ruby on Rails se remarcă ca un cadru puternic și eficient pentru construirea de aplicații web. Unul dintre aspectele fundamentale ale multor aplicații web este capacitatea de a colecta informațiile utilizatorilor prin intermediul formularelor. În această postare pe blog, vă voi ghida prin procesul de creare a unui formular simplu în Rails folosindform_cuajutor. În calitate de furnizor Rails, am avut privilegiul de a lucra la numeroase proiecte în care formularele joacă un rol crucial și sunt încântat să vă împărtășesc cunoștințele mele.
Înţelegereform_cuîn Rails
Înainte de a ne aprofunda în crearea unui formular, să luăm un moment pentru a înțelege ceform_cueste.form_cueste o metodă de ajutor în Rails care simplifică procesul de creare a formularelor HTML. Oferă o modalitate flexibilă și intuitivă de a genera formulare care sunt atât corecte din punct de vedere semantic, cât și ușor de întreținut. Indiferent dacă creați un formular de contact simplu sau un formular complex în mai mulți pași,form_cute-a acoperit.
Configurarea unei noi aplicații pentru șine
Dacă nu ați făcut-o deja, va trebui să configurați o nouă aplicație Rails. Deschideți terminalul și rulați următoarea comandă:
șine noi simple_form_app cd simple_form_app
Aceasta va crea o nouă aplicație Rails numităsimple_form_appși vă navigați în directorul aplicației.
Generarea unui controler și a unei vizualizări
În continuare, vom genera un controler și o vizualizare pentru a gestiona formularul nostru. Rulați următoarea comandă în terminalul dvs.:
șinele generează controler Forme noi
Aceasta va genera oFormsControllercu anouacțiune și un fișier de vizualizare corespunzător laapp/views/forms/new.html.erb.
Crearea formularului folosindform_cu
Acum, să deschidemapp/views/forms/new.html.erbfișier și creați formularul nostru folosindform_cu. Iată un exemplu de formular de contact simplu:
<%= form_with(url: "/submit_form", metoda: :post) face |form| %> <div> <%= form.label :nume %> <%= form.text_field :nume %> </div> <div> <%= form.label :email %> <%= form.email_field :email %> </div> <div> <%= form.label :message %> <%= form.text_area :message %> <submit %b> <submit%=> form. %> </div> <% end %>
În acest exemplu, folosimform_cupentru a crea un formular care va trimite datele sale către/submit_formURL folosindPOSTmetodă. În interiorul blocului de formulare, folosim diverse metode de ajutor de formular pentru a crea câmpuri de introducere pentru numele utilizatorului, e-mailul și mesajul, precum și un buton de trimitere.


Gestionarea trimiterii formularului
Pentru a gestiona trimiterea formularului, va trebui să adăugăm o rută și o acțiuneFormsController. Deschidețiconfig/rute.rbfișier și adăugați următoarea linie:
postați „/submit_form”, la: „forms#submit”
Aceasta va mapa/submit_formURL cătredepuneacţiune înFormsController. Acum, deschidețiapp/controllers/forms_controller.rbfișier și adăugați următoarea acțiune:
def submit # Aici puteți procesa datele formularului, de exemplu, salvați-l în baza de date name = params[:name] email = params[:email] message = params[:message] # Deocamdată, vom tipări doar datele în consolă. Sfârşit
În această acțiune, preluăm datele formularului dinparametriihash și imprimați-l pe consolă. Într-o aplicație din lumea reală, de obicei ați salva datele într-o bază de date sau ați trimite un e-mail. După procesarea datelor din formular, redirecționăm utilizatorul către calea rădăcină cu un mesaj de succes.
Stilul formularului
Pentru a face formularul nostru să pară mai prezentabil, putem adăuga câteva stiluri CSS. Deschidețiapp/assets/stylesheets/application.cssfișier și adăugați următoarele stiluri:
form div { margin-bottom: 10px; } form label { display: block; margine-jos: 5px; } introducere formular[type="text"], introducere formular[type="email"], zona text formular { lățime: 100%; umplutură: 5px; chenar: 1px solid #ccc; chenar-rază: 3px; } introducere formular[type="submit"] { background-color: #007BFF; culoare: alb; umplutură: 10px 20px; chenar: niciunul; chenar-rază: 3px; cursor: pointer; } introducere formular[type="submit"]:hover { background-color: #0056b3; }
Aceste stiluri vor da formei noastre un aspect curat și profesional.
Adăugarea de validare la formular
Pentru a ne asigura că utilizatorul introduce date valide, putem adăuga validare formularului nostru. În Rails, putem folosi validările ActiveRecord pentru a valida datele înainte de a le salva în baza de date. Cu toate acestea, deoarece nu folosim un model în acest exemplu, putem folosi JavaScript pentru a efectua validarea de bază pe partea clientului. Iată un exemplu despre cum să adăugați validare la formularul nostru folosind JavaScript:
document.addEventListener('DOMContentLoaded', function() { const form = document.querySelector('form'); form.addEventListener('submit', function(event) { const name = document.querySelector('input[name="name"]').value; const email = document.querySelector('form'); document.querySelector('textarea[name="message"]').value if (name === '' || email === '') { alert('Vă rugăm să completați toate câmpurile');
Acest cod JavaScript va împiedica trimiterea formularului dacă oricare dintre câmpurile obligatorii sunt goale.
Concluzie
Crearea unui formular simplu în Rails folosindform_cueste un proces simplu. Urmând pașii menționați în această postare de blog, puteți crea un formular funcțional care colectează informațiile utilizatorilor și gestionează trimiterile de formulare. În calitate de furnizor Rails, am văzut direct puterea și flexibilitatea Rails în construirea de aplicații web și sper că acest ghid v-a fost de ajutor.
Dacă sunteți interesat să achiziționați șine de înaltă calitate pentru proiectele dvs., vă oferim o gamă largă de opțiuni, inclusivGOST Standard KP140 șină de macara,49E2 șină de oțel, șiSină BS 100A. Șinele noastre sunt proiectate pentru a îndeplini cele mai înalte standarde de calitate și performanță și ne angajăm să oferim un serviciu excelent pentru clienți. Dacă aveți întrebări sau doriți să discutați despre cerințele dvs., vă rugăm să nu ezitați să ne contactați pentru o consultație în materie de achiziții.
Referințe
- Ghiduri șine: https://guides.rubyonrails.org/
- Rețeaua de dezvoltatori Mozilla: https://developer.mozilla.org/
