Eremu pertsonalizatuak¶
MRBS 1.12.2-k datu-baseko zutabe gehigarriak aurki ditzake eta erreserbak, gelak eta erabiltzaileak egiteko eremu gisa erabil ditzake. Eremu pertsonalizatuak, beraz, eskema luzapenak dira, ez zutabeak automatikoki sortzen dituzten ezarpenak.
Babeskopia egin lehenik
Egin datu-basearen babeskopia, eta probatu aldaketa produkziokoa ez den instalazio batean. MRBS eguneratzeek ez dituzte gune jakin bateko zutabeak sortzen, migratzen edo kentzen.
Eremu pertsonalizatuak onartzen diren tokietan¶
| Datu-baseen taula | Helburua | Arau garrantzitsua |
|---|---|---|
entry |
Banakako erreserbarako datu gehigarriak | Gehitu zutabe berdina repeat |
repeat |
Erreserba errepikakorraren txantiloiaren datuak | Mantendu izena, mota, luzera, baliogabetasuna eta lehenetsia entry |
room |
Gelaren edo baliabideen propietate gehigarriak | Gelako datuekin bistaratu eta editatu |
users |
Erabiltzaile-profilaren datu gehigarriak | Datu-baseen autentifikazioarekin soilik erabiltzen da |
entry zutabeak repeat zutabe berdinik gabekoak erreserba-eragiketa errepikakorrak huts egiten ditu. Tratatu bikotea eskema aldaketa bat bezala.
Erabili hizkiak, zenbakiak eta azpimarra soilik zutabe-izen batean. PostgreSQL-rekin bateragarri izateko, hasi letra edo azpimarra batekin. Nahiago participant_count edo catering bezalako izen egonkorrak eta minuskulak.
Onartutako datu-base motak¶
| SQL mota | MRBS kontrola |
|---|---|
TEXT |
Lerro anitzeko testua |
VARCHAR |
Testu-eremua edo lerro anitzeko testua, gehieneko luzeraren arabera |
DATE |
Data sarrera |
DECIMAL / NUMERIC |
Zenbakiaren sarrera |
INT |
Zenbaki osoen sarrera |
SMALLINT / TINYINT |
Kontrol-laukia, balio boolear gisa interpretatua |
Erabili SMALLINT eremu pertsonalizatu boolearetarako PostgreSQL eta TINYINT MySQL. Beste zutabe mota batzuk ez ditu onartzen eremu pertsonalizatuen kudeaketa automatikoak.
Gehitu eremu bat eskemari¶
Adibideek mrbs_ taula-aurrizki lehenetsia hartzen dute. Ordeztu $db_tbl_prefix beste balio bat badu.
Erreserba eremua¶
Adibide honek hautazko catering aukera bat gehitzen du:
ALTER TABLE mrbs_entry
ADD COLUMN catering VARCHAR(32) DEFAULT NULL;
ALTER TABLE mrbs_repeat
ADD COLUMN catering VARCHAR(32) DEFAULT NULL;
Bi adierazpenek MySQL eta PostgreSQLrekin funtzionatzen dute. Egiaztatu bi tauletan sortutako definizioak erreserba formularioa ireki aurretik.
Gela kontrol-laukia¶
MRBS 1.12.2-n, datu-basearen lehenetsia erabiltzen da errenkada berri bat sortzen denean. Aukeratu lehenetsiak nahita, batez ere derrigorrezko eremu eta kontrol-laukietarako.
Eman eremuari etiketa itzulia¶
Gainidazketarik gabe, MRBSk zutabe-izenetik eratortzen du etiketa. Definitu etiketa bat hizkuntza aktibo bakoitzeko config.inc.php fitxategian:
$vocab_override['en']['entry.catering'] = 'Catering';
$vocab_override['de']['entry.catering'] = 'Verpflegung';
$vocab_override['fr']['entry.catering'] = 'Restauration';
$vocab_override['es']['entry.catering'] = 'Catering';
entry/repeat bikote baterako, definitu entry.catering bakarrik; ez da repeat.catering token behar. Gela eta erabiltzaile eremuek room.coffee_machine eta users.phone bezalako tokenak erabiltzen dituzte.
Ikus Testua eta itzulpenak hiztegia gainidazteko, hizkuntza-fitxategiak eta itzulitako Laguntza-orrietarako.
Aukeratu sarrerako portaera¶
Aukera finkoak¶
$select_options doako sarrera aukeraketa zerrenda batekin ordezkatzen du:
$select_options['entry.catering'] = array(
'' => 'Please select',
'c' => 'Coffee',
's' => 'Sandwiches',
'h' => 'Hot lunch',
);
Array asoziatibo batean, MRBSk gakoa gordetzen du (c), eta balioa (Coffee) bistaratzen, bilatzen eta txostenetan erabiltzen du. Horri esker, formulazioa alda daiteke gordetako datuak berridatzi gabe.
Saihestu zifraz soilik osatutako gakoak: PHPk zenbaki osoen itxurako kate-gakoak zenbaki oso bihurtzen ditu; beraz, MRBSk array indexatu gisa interpreta dezake. Sartu aukera huts bat derrigorrezko hautaketa bat hautatu gabe hasi behar denean.
$select_options erabil daiteke entry.name, entry.description, entry eremu pertsonalizatuetan eta users eremu pertsonalizatuetan. Konfiguratutako aukera-izenak gune osorako kateak dira; eremuaren etiketa bera $vocab_override erabiliz itzul daiteke.
Doako sarrera duten iradokizunak¶
Erabili $datalist_options iradokizunetarako, beste balio bat onartzen duzun bitartean:
$select_options-ren eremu berdinak onartzen ditu. Datu-zerrend asoziatiboekin, gordetako gakoa harrigarria izan daiteke erabiltzaileentzat, beraz, probatu portaera erabili aurretik.
Derrigorrezko eremuak, pribatuak eta baliozkotuak¶
Egin derrigorrezko eremu bat nonahi:
Edo 1 eta 3 datu-baseen IDak dituzten eremuetan soilik:
Arloko berariazko derrigorrezko arauak entry eremuetan soilik aplikatzen dira. Bidali aurretik nahitaezko kontrol-laukia markatu behar da.
Eremu pertsonalizatu pribatuak onartzen dira entry eta users:
Honek balioa babesten du erreserba pribatuak gaituta eta konfiguratuta daudenean. Probatu eginkizun garrantzitsu guztiak; ez erabili UI pribatutasuna datu sentikorrak gutxitzeko ordezko gisa.
Ereduen baliozkotzea users testu-eremu pertsonalizatuetara mugatuta dago:
$pattern['users.zip_code'] = '^[0-9]{5}(?:-[0-9]{4})?$';
$vocab_override['en']['users.zip_code.oninvalid'] =
'Enter a ZIP code such as 12345 or 12345-6789';
Erreserbaren testu-eremuek itzulitako leku-markak izan ditzakete:
Bezeroaren aldeko patroiek erabiltzailearen informazioa hobetzen dute, baina ez dute eremua datu sentikorrak edo fidagaitza den markaketa gordetzeko leku seguru bihurtzen.
Kontrolatu eremuen ordena¶
Jarri erreserba-eremuak esplizituki sortu eta ikusi orrietan:
Zerrendatzen ez diren eremuak bere ordena arruntean eransten dira. Eremu pertsonalizatuak txostenak bilatzeko formularioan ere jar daitezke:
Adibide osoa¶
Bi erreserba-tauletan catering gehitu ondoren:
$vocab_override['en']['entry.catering'] = 'Catering';
$vocab_override['de']['entry.catering'] = 'Verpflegung';
$vocab_override['fr']['entry.catering'] = 'Restauration';
$vocab_override['es']['entry.catering'] = 'Catering';
$select_options['entry.catering'] = array(
'' => '—',
'c' => 'Coffee',
's' => 'Sandwiches',
'h' => 'Hot lunch',
);
$is_mandatory_field['entry.catering'] = array(1, 3);
$edit_entry_field_order = array('name', 'catering', 'description');
$report_search_field_order = array(
'report_start',
'report_end',
'catering',
);
Adibide honetako aukera-izenak berdinak dira interfazearen hizkuntza guztietan. Aukeren izenak itzuli behar badira, diseinatu eta probatu gunerako luzapen berezi bat, $select_options aukerak automatikoki itzultzen dituela pentsatu beharrean.
Aldatu, kendu eta berritu¶
Zutabe bat laburtu edo mota aldatu aurretik, ikuskatu lehendik dauden balioak eta probatu bihurketa. Eremu bat kendu aurretik, kendu bere konfigurazio-erreferentziak, zabaldu aldaketa hori, berretsi aplikazioa funtzionatzen duela eta, ondoren, zutabea askatu datu-basearen aldaketa prozesu arruntean. Erreserba eremuetarako, aldatu entry eta repeat.
Dokumentatu zutabe pertsonalizatu guztiak gunearen eragiketa-dokumentazioan, eta egiaztatu berriro MRBS bertsio-berritze bakoitzaren ondoren. MRBSren eskema-script estandarrek ez dituzte zutabe horiek kudeatzen.
Egiaztapen-zerrenda¶
entryetarepeatdefinizioak berdinak dira erreserba-eremu guztietan.- Erreserba bat sortzea, editatzea, ikustea, kopiatzea eta ezabatzea funtzionatzen du.
- Serie errepikakorrak eta agerraldi bat zuzen edita daitezke.
- Datu-basearen lehenetsiak erregistro berriei aplikatzen zaizkie.
- Beharrezkoa, pribatua, hautatua, datu-zerrenda eta baliozkotze portaerak rolaren eta eremuaren arabera funtzionatzen du.
- Etiketak konfiguratutako hizkuntza guztietan agertzen dira.
- Bilaketak, txostenak, posta elektronikoa, egutegiaren esportazioa eta inportazioa/esportazioa balio seguruak erakusten dituzte.
- Gela eta erabiltzaileen administrazioak nahi diren eremuak soilik erakusten ditu.
- Babeskopia eta leheneratzeko prozedurek eskema hedatua barne hartzen dute.