मैं एक खाद्य मेनू बना रहा हूं जिसे व्यवस्थापक ड्रैगिंग और ड्रॉप करके ऑर्डर/सॉर्ट कर सकता है। इस मेनू में कई श्रेणियां (उत्पाद श्रेणी) और उत्पाद (उत्पाद) शामिल हैं।लार्वेल बचत वाक्प्रचार मॉडल की क्रमबद्ध सूची
मैं नेस्टेड डी & डी की अनुमति देने के लिए क्लाइंट-साइड पर HTML5Sortable का उपयोग कर रहा हूं। मार्कअप बहुत सरल है:
<div class="categories">
@foreach($categories as $category)
<div class="category">
@foreach($category->products as $product)
<div class="products">
<div class=""product" data=id="{{ $product->id }}">
{{ $product->name }}
</div>
</div><!-- /products !-->
@endforeach
</div><!-- /category !-->
@endforeach
</div>
और इसी जावास्क्रिप्ट:
$('.categories').sortable({
items: '.category'
});
$('.products').sortable({
items: '.product'
});
// Will be called when the user is done repositioning the products and categories
function getOrderedList() {
var data = {};
$('.categories').find('.category').map(function(i) {
var category = $(this);
data[i] = {};
data[i].id = category.data('id');
data[i].products = category.find('.product').map(function() {
return $(this).data('id');
}).get();
});
data = JSON.stringify(data); // Send data to server
}
समारोह getOrderedList
JSON स्ट्रिंग वापस Laravel के लिए भेज देंगे, जो क्रमबद्ध श्रेणी आईडी की और उत्पाद आईडी के शामिल हैं:
{"0":{"id":1,"products":[2,3,1,4,5,6,7,8,9,10]},"1":{"id":2,"products":[11,12,13,14]},"2":{"id":3,"products":[15,16,17,18]}}
मैं इस काम को बैक एंड पर कैसे बनाऊंगा? मुझे लगता है कि मुझे डेटाबेस में कहीं भी इस सरणी को स्टोर करना होगा और बाद में आईडी के मॉडल को ढूंढना और ऑर्डर करना होगा?
संक्षेप में: सॉर्टिंग (नेस्टेड) मॉडल (लार्वेल के भीतर) के लिए एक साफ और लचीला समाधान क्या है?
आपके उत्तर के लिए धन्यवाद, लेकिन मुझे पहले से ही यह पता था। मुझे लगता है कि मैं वास्तव में एक पॉलीमोर्फिक समाधान की तलाश में हूं जहां 'वज़न' कॉलम उत्पाद मॉडल में ही संग्रहीत नहीं किया जाएगा, इसलिए इसे इंगित करने के लिए धन्यवाद। – JasonK
मैं –