• Как в laravel использовать свои переменные и функции в представлении?

    FMars
    @FMars
    Если Laravel 5.1, то:
    laravel.com/docs/5.1/blade#service-injection

    Как делаю я.
    1. Создаем класс с нашим функционалом. К примеру в папке app
    // app/Some.php
    
    namespace App;
    
    class Some {
        public function getValue() {
            return "VALUE";
        }
    }


    2. Регистрируем класс в сервис провайдере. app/Providers/AppServiceProvider.php.
    В метод register вписываем:
    public function register()
        {
            $this->app->bind('Some', function($app)
            {
                return new \App\Some;
            });
        }
    }


    3. В вюхах используем следующую конструкцию:
    @inject('some', 'Some')
    
    <div>
        Value: {{ $some->getValue() }}.
    </div>
    Ответ написан
    1 комментарий
  • Post c домена на другой домен?

    @Nodar
    Python, Ruby, JavaScript
    Вам абсолюно точно нужен CORS, вот хорошее видео о том, что это такое и как пользоваться. Рекомендую посмотреть.
    Ответ написан
    Комментировать
  • Множественный input tags autocomplete?

    @eoffsock
    Кодер (Rails)
    aehlke.github.io/tag-it
    textextjs.com/manual/examples/autocomplete-with-ta...

    И еще примерно миллион разных реализаций. Можете использовать готовое, можете распотрошить и посмотреть как устроено.
    Ответ написан
    4 комментария
  • Постраничная навигация Laravel 4 при поиске?

    zvermafia
    @zvermafia
    WebDev
    {{ $products->appends(array('search' => $search))->links() }}

    Подробно тут: ПАРАМЕТРЫ В ССЫЛКАХ.
    Ответ написан
    Комментировать
  • В чем суть Yii2?

    iiifx
    @iiifx
    PHP, OOP, SOLID, Yii2, Composer, PHPStorm
    Вы еще не готовы значит. Для любого инструмента нужен свой уровень навыков и знаний. CI морально устарел, при чем давно. Его используют "по привычке" или потому, что старые проекты на нем сидят. Можно еще много чего написать про ООП, ORM, формы, лайауты, внутреннюю структуру, расширяемость компонентов и т.д. ... но не думаю, что вы меня поймете. Пока вам хватает CI - пользуйтесь им. Но для вас же будет лучше, если вы побыстрее уйдете от CI и научитесь пользоваться Yii2.
    Ответ написан
    6 комментариев
  • Laravel 4 Ajax подгрузка?

    cyberS7
    @cyberS7 Автор вопроса
    Реализация проста.
    Добавляем в head для защиты от csrf
    <meta name="csrf-token" content="<?php echo csrf_token(); ?>">

    Добавляем кнопку.
    <button type="button" id="loading-example-btn" data-loading-text="Loading..." class="btn btn-primary noradius" style="margin:0px auto">
      Показать ещё
    </button>
    Добавляем блок в который будем загружать контент. Указываем в нём id="content"
    <code lang="html">
    <div id="content"></div>
    </code>

    Скрипт:
    <script>
      $('#loading-example-btn').click(function () {
            var btn = $(this)
            btn.button('loading')
            $.ajax({
        		    url: "more", // url запроса
                        cache: false, 
                        data: { ids: ids }, // если нужно передать какие-то данные
                        type: "POST", // устанавливаем типа запроса POST
                        beforeSend: function(request) {  // нужно для защиты от CSRF
            return request.setRequestHeader('X-CSRF-Token', $("meta[name='csrf-token']").attr('content'));
        },
                       	success: function(html) { $('#content').append(html);} //контент подгружается в div#content
        }).always(function () {
          btn.button('reset')
        });
        return false
      });
    
    </script>


    в routes.php
    // POST-запрос при нажатии на нашу кнопку.
    Route::post('more', array('before'=>'csrf-ajax', 'as'=>'more', 'uses'=>'HomeController@getMoreEvents'));
    
    // Фильтр, срабатывающий перед пост запросом.
    Route::filter('csrf-ajax', function()
    {
        if (Session::token() != Request::header('x-csrf-token'))
        {
            throw new Illuminate\Session\TokenMismatchException;
        }
    });


    И сам контроллер.
    ...
    public function getMoreEvents()
    	{	
    		if (Request::ajax()) {
    		$ids=$_POST['ids']; // в моём случае пост запросом передается массив чисел вида [1,2,3,4...], здесь я этот массив принимаю.
    		return View::make('home.more')->with('more', Model::whereNotIn('id','!=', $ids))->get(); //делаем запрос в базу данных, получаем статьи в которых нет id из массива $ids
    		}
    	}

    Если что-то непонятно описал. Задавайте вопросы.
    Ответ написан
    1 комментарий