switch($q) {Di Python kita bisa menggunakan Python Dictionary dan perintah Lambda untuk membuat perintah seperti pencabangan switch pada bahasa lain, sebagai contoh :
case "all" :
$users = get_all_user();
break;
case "admin" :
$users = get_admin_user();
break;
case "staff" :
$users = get_staff_user();
break;
default:
$users = get_all_user();
break;
}
filter = request.GET.get('q', 'all')Lambda merupakan perintah untuk membuat fungsi anonim yang menghasilkan objek dari perintah Lambda. Perintah seperti di atas seharusnya lebih efisien dibanding kita membuat pencabangan if yang harus memeriksa kondisi satu persatu.
users = {
"all" : lambda : User.objects.filter('all'),
"admin" : lambda : User.objects.filter('admin'),
"staff" : lambda : User.objects.filter('staff'),
"user" : lambda : User.objects.filter('user')
}[filter]()
Ya tho? :D
No comments:
Post a Comment