Jika Anda mencari deskripsi yang lebih lengkap dari proyek ini, periksa situs dokumentasi: https://www.uddocs.com/
Demo ini menunjukkan fitur utama perpustakaan.
Saya menulis kode ini untuk menghindari menulis berulang kali hal yang sama. Saya telah menulis aplikasi web selama bertahun -tahun. Apa yang dilakukan aplikasi itu? Mereka menyingkirkan data dari suatu formulir, menyimpan data itu dalam database dan kemudian mengedit data itu dalam bentuk lain dan menunjukkan data itu dalam tabel atau dalam diagram iklan kadang -kadang mereka menghapus data itu (tidak terlalu sering adil).
Nah, saya telah melakukannya berulang kali, bentuk demi bentuk, ORM setelah ORM, MVC setelah MVC.
Saya merasa tersesat dan bosan. Saya bekerja sangat keras dan saya mencapai sangat sedikit.
Saya telah belajar banyak kerangka kerja untuk mempercepat proses saya, saya membaca banyak buku: hal baru, jadi keluar!
Kemudian saya mulai memperhatikan bahwa pekerjaan saya dapat diulang dan kerangka kerja itu memperlambat saya.
Dengan pendekatan MVC, setiap perubahan yang Anda inginkan untuk aplikasi Anda mengharuskan Anda membuka setidaknya 3 file.
Jadi saya mulai bertanya -tanya: Apa yang benar -benar saya butuhkan untuk membuat misalnya data tabel yang diambil dari database? Jawabannya adalah: Saya perlu membuat kueri SQL, saya perlu menentukan struktur tabel dan saya perlu meletakkan hasil kueri di atas meja. Itu saja. Saya membutuhkan tiga hal ini, tidak lebih dari itu.
Saya memasukkan semua informasi ini dalam file JSON dan ini keluar:
{
"query" : {
"sql" : " select id, name, amount, duedate FROM requestv1; "
},
"table" : {
"title" : " My table " ,
"fields" : [
{ "headline" : " Name " , "sqlfield" : " name " },
{ "headline" : " Amount " , "sqlfield" : " amount " },
{ "headline" : " Due date " , "sqlfield" : " duedate " }
]
}
}Tidak ada Orm, tidak ada MVC, dan kerangka kerja yang tetap menyingkir.
Saya tahu saya menggunakan SQL dan bukan ORM tapi saya suka SQL! SQL belum berubah dalam usia, dan ini berarti itu berhasil! Tidak menyedihkan menjadi tua!
Saya memberikan judul ke meja dan di array bidang saya mendefinisikan berita utama dan bidang SQL yang diambil dari kueri untuk mengisi sel -sel tabel itu. Berapa kali Anda menyelesaikan masalah sederhana yang sama ini? Pernahkah Anda melakukannya dengan menulis lebih sedikit kode? Jika itu benar tolong beri tahu saya!
Saya tahu apa yang Anda pikirkan: ini tidak cukup umum, bagaimana jika saya perlu membuat perhitungan atau menggeneralisasi beberapa logika atau melakukan sesuatu yang lebih rumit? Nah, Anda selalu dapat kembali ke cara lama Anda, dan memprogram pengontrol tampilan, mungkin terbuat dari sebagian, terhubung dan orm, tuliskan model Anda dan ... seterusnya dan seterusnya dan seterusnya ...
Tapi, mari kita lurus, apakah Anda benar -benar membutuhkannya? Seberapa sering Anda melakukan itu? Saya sering menemukan MySel mengisi meja dengan hasil hanya satu kueri, mungkin dengan beberapa meja bergabung.
Bagaimana jika saya perlu menambahkan tautan ke beberapa tindakan yang didukung ke tabel? Saya mendefinisikannya dalam format JSON juga.
{
"query" : {
"sql" : " select id, name, amount, duedate FROM requestv1; "
},
"table" : {
"title" : " My table " ,
"fields" : [
{ "headline" : " Name " , "sqlfield" : " name " },
{ "headline" : " Amount " , "sqlfield" : " amount " },
{ "headline" : " Due date " , "sqlfield" : " duedate " }
],
"actions" : [
{ "label" : " Info " , "resource" : " inforequest " , "parameters" :[{ "name" : " id " , "sqlfield" : " id " }] },
{ "label" : " Edit " , "resource" : " formrequest " , "parameters" :[{ "name" : " id " , "sqlfield" : " id " }] },
{ "label" : " Delete " , "resource" : " deletereport " , "parameters" :[{ "name" : " id " , "sqlfield" : " id " }] }
]
}
}Tautan didefinisikan dari label (pengguna perlu melihat apa yang mengklik) tindakan dan beberapa parameter mungkin berasal dari kueri SQL.
Jika Anda bertanya -tanya apa sumber daya itu, itu adalah indeks untuk menemukan file konfigurasi JSON tertentu, seperti ini, di sistem. Ada sumber daya untuk formulir, untuk ekspor PDF, untuk grafik data, untuk apa pun yang Anda butuhkan. Dan jika Anda membutuhkan lebih banyak, Anda selalu dapat mendefinisikan templat baru, ini adalah proyek open source.
Ada beberapa hal yang harus dilakukan untuk menyelesaikan file. Kami NEET untuk memberinya nama sehingga kami dapat menemukannya di antara sumber daya. Kita perlu menambahkan beberapa metadata, jika di masa depan kita perlu menambahkan lebih banyak fitur.
Sistem ini mendukung konsep kelompok yang diizinkan untuk mengakses sumber daya tertentu, ini menjelaskan array "kelompok yang diizinkan".
Ada bagian GET dalam file ini, itu ada karena semua konfigurasi ini untuk permintaan GET.
{
"name" : " requesttablev1 " ,
"metadata" : { "type" : " table " , "version" : " 1 " },
"allowedgroups" : [ " administrationgroup " , " teachergroup " , " managergroup " ],
"get" : {
"request" : {
"parameters" : []
},
"query" : {
"sql" : " select id, name, amount, duedate FROM requestv1; "
},
"table" : {
"title" : " My table " ,
"fields" : [
{ "headline" : " Name " , "sqlfield" : " name " },
{ "headline" : " Amount " , "sqlfield" : " amount " },
{ "headline" : " Due date " , "sqlfield" : " duedate " }
],
"actions" : [
{ "label" : " Info " , "resource" : " inforequest " , "parameters" :[{ "name" : " id " , "sqlfield" : " id " }] },
{ "label" : " Edit " , "resource" : " formrequest " , "parameters" :[{ "name" : " id " , "sqlfield" : " id " }] },
{ "label" : " Delete " , "resource" : " deletereport " , "parameters" :[{ "name" : " id " , "sqlfield" : " id " }] }
]
}
}
}Jika Anda dapat menggunakan templat standar, Anda dapat membuat seluruh aplikasi hanya mengisi folder SRC/khusus dengan semua sumber daya yang Anda butuhkan. Buka folder itu dan lihat sehingga Anda dapat melihat bagaimana sumber daya lainnya didefinisikan.