ID uint `gorm:"primary_key"`
SELECT z.Nomer, GROUP_CONCAT(p.Name SEPARATOR ', ')
FROM Nakladnaya as n
INNER JOIN Product as p ON n.ProductID = p.ID
INNER JOIN Zakaz as z ON n.ZakazNomer = z.Nomer
GROUP BY z.Nomer
Есть шаблон приложения и область контента, которая меняется без перезагрузки страницы.Это не Laravel должен делать, а как раз Backbone. На Laravel вам нужно реализовать REST-апи (ну или какое захотите), с которым будет работать Backbone.
Вот при переходе по роутам #profile/#list и т.д. нужно, чтобы Laravel собирал данные и передавал их в соответствующие модели.
<div class="parent">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
.parent {
width: 170px;
text-align: center;
}
.child {
display: inline-block;
width: 50px;
height: 50px;
background: black;
border-radius: 50%;
}
Посмотреть вживую..parent {
width: 170px;
display: flex;
justify-content: center;
flex-wrap: wrap;
}
.child {
width: 50px;
height: 50px;
background: black;
border-radius: 50%;
}
Поиграться. var buttons = document.querySelectorAll('.js-btn-item'),
popups = document.querySelectorAll('.js-products-popup'),
closers = document.querySelectorAll('.js-btn-close'),
index, button, popup, closer;
for (index = 0; index < buttons.length; index++) {
button = buttons[index];
popup = popups[index];
closer = closers[index];
button.addEventListener('click', buttonHandler(popup));
closer.addEventListener('click', closerHandler(popup))
}
function buttonHandler(popup) {
return function (event) {
event.preventDefault();
popup.classList.add('js-popup-show');
}
}
function closerHandler(popup) {
return function (event) {
event.preventDefault();
popup.classList.remove('js-popup-show');
}
}
$clothes_col->where('category_id', $category)->random()->toArray();
$category += 0;
$(e).one('click', function () {
в следующий раз не вызывать эту функцию при клике на $(e)
})
updateResult(".currentItem", this.owl.currentItem);
var myNumber = 10;
function newFunc(number) {
var el = document.getElementById('bar'),
content = '';
for (var i = 1; i <= number; i++) {
content += 'Number: ' + i + '<br />';
}
el.innerHTML = content;
}
newFunc(myNumber);
var myNumber = 10;
function newFunc(number) {
var newArray = [],
str;
for (var i = 0; i < number; i++) {
str = 'Number: ' + (i + 1) + '<br />';
newArray.push(str);
console.log(str);
}
}
newFunc(myNumber);
var myNumber = 10;
function newFunc(number) {
for (var i = 1; i <= number; i++) {
console.log('Number: ' + i + '<br />');
}
}
newFunc(myNumber);
SELECT c.id_category as id, n.name as name, p.name as parent_name
FROM category as c
LEFT JOIN cat_info as n USING(id_category)
LEFT JOIN cat_info as p ON c.id_parent = p.id_category
var buttonItems = document.querySelectorAll('.button-item'),
index, button;
for (index = 0; index < buttonItems.length; index++) {
button = buttonItems[index];
button.addEventListener('click', function (event) {
console.log('click');
event.preventDefault();
});
}
var buttons = document.querySelectorAll('.button-item'),
index, button;
for (index = 0; index < buttons.length; index++) {
button = buttons[index];
button.addEventListener('click', clickHandler);
button.addEventListener('dblclick', doubleClickHandler);
}
function clickHandler(event) {
console.log('click', this.innerText);
event.preventDefault();
}
function doubleClickHandler(event) {
console.log('doubleclick', this.innerText);
this.removeEventListener('click', clickHandler);
this.removeEventListener('dblclick', doubleClickHandler);
}