অ্যাপ এম এল রেফারেন্স (AppML Reference)

রিদওয়ান বিন শামীম

 

অ্যাপ এম এল এইচটিএমএল এট্রিবিউট

উদাহরণ,


<div appml-include-html="inc_header.htm"></div>
 
 <h1>Customers</h1>
 <table appml-data="customers.js" appml-controller="myController">
   <tr>
     <th>Customer</th>
     <th>City</th>
     <th>Country</th>
   </tr>
   <tr appml-repeat="records">
     <td>{{CustomerName}}</td>
     <td>{{City}}</td>
     <td>{{Country}}</td>
   </tr>
 </table>
 
<divappml-include-html="inc_footer.htm"></div>

 

 

 

Attribute Description Explained
appml-controller AppML controller হিসাবে বিবৃত AppML Controllers
appml-data এপ্লিকেশনের জন্য ডাটা সোর্স বিবৃত করে AppML Data
appml-include-html যে এইচটিএমএল ব্যবহৃত হবে তার বিবরণ AppML Includes
appml-repeat যে এইচটিএমএল পুনরাবৃত্ত হবে তার বিবরণ AppML Howto

 

অ্যাপ এম এল ম্যাসেজ

উদাহরণ,


function myController($appml) {
     if ($appml.message == "display") {
         if ($appml.display.name == "CustomerName") {
             $appml.display.value = $appml.display.value.toUpperCase();
         }
     }
 }

 

 

 

Message Description
“ready” অ্যাপ এম এল শুরুর পরে দেখায়, লোড করতে প্রস্তুত
“loaded” অ্যাপ এম এল লোডেড, ডাটা দেখাতে প্রস্তুত
“display” অ্যাপ এম এল কোনও ডাটা আইটেম দেখানোর আগে দেখায়।
“done” অ্যাপ এম এল সম্পন্ন হওয়ার পর দেখায়
“submit” অ্যাপ এম এল ডাটা সাবমিটের আগে দেখায়
“error” অ্যাপ এম এল কোনও ভুলের সম্মুখীন হলে দেখায়

 

অ্যাপ এম এল ম্যাসেজ অধ্যায়ে এগুলো আরও বিস্তারিত ব্যাখ্যা করা হবে।

 

অ্যাপ এম এল মডেল

উদাহরণ ,


{
 "security": "admin",
 "rowsperpage" : 10,
 
 "database": {
     "connection": "mysql",
     "sql"       : "SELECT * FROM Customers",
     "orderby"   : "CustomerName"}},
 
 "filteritems" : [
     {"item" : "CustomerName", "label" : "Customer"},
     {"item" : "City"},
     {"item" : "Country"}], 
 
 "sortitems" : [
     {"item" : "CustomerName", "label" : "Customer"},
     {"item" : "City"},
     {"item" : "Country"}]
 }

 

 

অ্যাপ এম এল মডেলের বৈশিষ্ট্য

 

উপাদান বর্ণনা
“data” মডেলের ফাইল সোর্স বর্ণনা করে।
“database” মডেলের ডাটাবেস সোর্স বর্ণনা করে।
“filteritems” ফিল্টারের সীমাবদ্ধতা নির্দেশ করে
“rowsperpage” প্রতি পেজে সারির সংখ্যা খুঁজে, বিবৃত করে
“security” মডেলের নিরাপত্তা বিবৃত করে
“sortitems” সর্টিং সীমাবদ্ধতা বিবৃত করে।

 

এপ্লিকেশন নিরাপত্তা

এপ্লিকেশনে ঢুকতে এডমিন মেম্বার হিসেবে লগ ইন করতে হবে।

উদাহরণ,


{
 "security": "admin",
 "database": {
     "connection": "mysql",
     "sql"       : "SELECT * FROM Customers",
     "orderby"   : "CustomerName"}
 }
প্রাইভেট মডেলঃ মডেলে নিজের প্রাইভেট ডাটা যোগ করার উপায় আছে, এই উদাহরণে ডাটার ক্ষেত্রে সীমাবদ্ধতা দেখানো হল,
"restrictions" : {
     "fname" : {"maxlength": 40},
     "price" : {"max": 999,"min": 100}
     }

 

 

মডেল ডাটা সার্ভার এপ্লিকেশনেও ব্যবহৃত হয়, অ্যাপ এম এল কন্ট্রোলার দ্বারা।

নিচের উদাহরণে ইনপুট ভ্যালিডেশনের জন্য মডেল ডাটা ব্যবহৃত হয়েছে।


function myController($appml) {
     if ($appml.message == "submit") {
         var price = document.getElementById("price").value;
         if (price < $appml.model.restrictions.price.min) {
             $appml.displayError(15, "Price too low!");
             return;
         }
 }