 Laravel по-русски
Laravel по-русски
      
      
    Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Проблема решена путем обновления Laravel до последней версии.
Как правильно реализовать валидацию нескольких изображений (multiple) в Laravel 5.3:
Делаю так:
<form method="post" action="/add" enctype="multipart/form-data">
     {{ csrf_field() }}
     <input name="image[]" type="file" multiple>
     <button type="submit">Добавить</button>
</form>$this->validate($request,[
     'image.*' => 'mimes:jpeg,jpg,png|dimensions:min_width=200,min_height=200|max:3000'
]);Все бы хорошо но если не выбираю изображения вылетают все ошибки по валидации.
1. В layout должен быть @yield('content') на месте контента который будет меняться.
2. В контролере или в роуте должен быть прописан view на blade файл который должен встраиваться в layout п кримеру - return view('index')
3. Ну и сам файл index:
@extends('layout')
@section('content')
Вставляешь свой код
@stopСмотри подробнее: https://laravel.com/docs/5.1/blade
Через use подключается все в самом начале.
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\Album;
use App\Gallery;
use DB;
use Carbon/Carbon;Решение:
            this.$http.get('/comments').then(function(data)
            {
                this.$set('comments', data.json());
            });Пытаюсь сделать комментарии через vue но вывод через v-for не работает выяснилось что даже console.log не отрабатывает в
this.$http.post('/comments', function(data)Сам vue работает а вот Vue-resource не хочет. Как можно его проверить и в чем может быть причина ?
Vue и Vue-resource подключал через npm, gulp, elixir. Делал все по этому видео https://www.youtube.com/watch?v=qA5PlSh1Qq8
Vue:
Vue.http.headers.common['X-CSRF-TOKEN'] = $('meta[name="csrf-token"]').attr('content');
new Vue({
    el: '#realtime',
    methods:
    {
        fetchComments: function()
        {
            this.$http.post('/comments', function(data)
            {
                console.log(data);
                this.$set('comments', data);
            });
        }
    },
    ready: function()
    {
        this.fetchComments();
    }
});Вырезки с шаблона:
<meta id="token" name="csrf-token" content="{{ csrf_token() }}">
<div id="realtime">
    <div v-for="comment in comments">
        <p><b>@{{ comment.name }}</b> <span class="date">@{{ LocalizedCarbon::instance(comment.created_at)->diffForHumans() }}</span></p>
        <p>@{{ comment.comment }}</p>
    </div>    
</div>
<script src="{{ URL::asset('bootstrap/js/vue.js') }}"></script>
<script src="{{ URL::asset('bootstrap/js/realtime.js') }}"></script>Роут:
Route::get('/', function ()
{
    return view('layout');
});
post('/comments', function()
{
    return App\Comment::orderBy('created_at', 'DESC')->get();
});Все спасибо разобрался. Структура была не правильной.
FormItem::select('season_id', 'Сезон')->model('App\Season')->display('title')->required(),
Сезоны отображает, но при редактировании не выбирает нужный. Показывает как новый
Доделываю админку на SleepingOwl v3
Столкнулся с проблемой есть таблица Options и Seasons соединяются через Many to Many дополнительной таблицей Option_Season.
При редактировании ptions нужно показать активный Seasons и возможность его сменить.
Делаю следующее:
FormItem::select('season_id', 'Сезон')->list('\Season')->required(),На что мне выдает ошибку:
Call to undefined method SleepingOwl\Admin\FormItems\Select::list()Добавляю в модель Season:
public static function getList()
{
    return static::lists('name', 'id');
}Ошибка та же.
Пытался делать как в демо примере.
Сменил в моделе:
class Season extends Modelна
use SleepingOwl\Models\SleepingOwlModel;
class Season extends SleepingOwlModelВыдает ошибку:
Class 'SleepingOwl\Models\SleepingOwlModel' not foundКак с этим бороться ? Либо где находится SleepingOwl\Models\SleepingOwlModel ?
{{ (Request::is('companies') ? 'class=active' : '') }}Где companies - ваш route
Хочу установить SleepingOwl Admin что бы не писать админку самому, но не могу понять как сделать пункт 1
когда пишу "sleeping-owl/admin": "dev-development"
пишит сисетмный пункт не найден подскажите как установить аднимнку
Можешь глянуть тут -> http://www.youtube.com/watch?v=ca4zn71n4BI
Как я понимаю это нужно реализовать с помощью SQL запроса (JOIN)
Имеются 2ве таблицы "Categories" и "Products" связанные Many To Many (Многие к многим) дополнительной таблицей "Category_Product". С выводом всех категорий проблем не возникло но не могу понять как вывести только те категории в которых есть товар.
Начинал делать так:
// Выбираем весь товар
$products_all = Product::All();
// Узнаем их категории
foreach ($products_all as $product)
{
     foreach ($product->categories as $category)
     {
          $category_array[] = $category->id;
     }
}
// Убираем повторяющиеся категории
$categories_unique = array_unique($category_array);Но подумав понял что в итоге их же придется выводить с помощью toHierarchy() а он не поддерживает массивы  (whereIn)
 (whereIn)
Как быть ? В какую сторону копать ?