Laravel 6.x Рюкзак NewsCrud Плагин - PullRequest
0 голосов
/ 20 апреля 2020

Что я хочу сделать, это разрешить админ-панели публиковать новости, используя newscrud Я запутался в том, как мне взять информацию из базы данных и показать пользователю статьи.

У меня проблемы с использованием плагина newscrud для laravel. Я не совсем понимаю, как использовать этот плагин. Я установил его, используя composer. Все контроллеры, модели et c. находятся в папке vendor в моем Laravel проекте.

Попытки: Я пытался сделать функцию в laravel -project / vendor /backpack/newscrud/src/app/Http/Controllers/Admin/ArticleCrudController.php файл:

public function index()
{
    # Pass the article database information in articles var
    $articles = Articles::all();

    # Return this variable to blog page
    return view ('blog')->with('articles', $articles);
}

и в маршрутах / сети. php файл:

Route::get('/blog', 'ArticleCrudController@index')->name('blog');

Код переднего конца

                      @foreach($articles as $article)

                          <div class="col-md-12 d-flex ftco-animate">

                            <div class="blog-entry align-self-stretch d-md-flex">

                              <a href="blog-single.html" class="block-20" style="background-image: url('images/image_6.jpg');">

                              </a>

                              <div class="text d-block pl-md-4">

                                <div class="meta mb-3">

                                  <div><a href="#">July 20, 2019</a></div>

                                  <div><a href="#">Admin</a></div>

                                  <div><a href="#" class="meta-chat"><span class="icon-chat"></span> 3</a></div>

                                </div>

                                <h3 class="heading"><a href="#">Even the all-powerful Pointing has no control about the blind texts</a></h3>

                                <p>Far far away, behind the word mountains, far from the countries Vokalia and Consonantia, there live the blind texts.</p>

                                <p><a href="blog-single.html" class="btn btn-primary py-2 px-3">Read more</a></p>

                              </div>

                            </div>

                          </div>

                    @endforeach    

Ошибка Полученное сообщение об ошибке:

Target class [App\Http\Controllers\ArticleCrudController] does not exist. 

Если вам нужна информация / скриншоты Я готов предоставить их.

Ответы [ 2 ]

0 голосов
/ 22 апреля 2020

Попробуйте отредактировать свой веб. php, например:

Route::group([
    'prefix' => '/',
    'middleware' => ['web'],
    // This is all the namespace in directory
    'namespace' => 'laravel-project\vendor\backpack\newscrud\src\app\Http\Controllers\Admin',
], function () {
    Route::get('/blog', 'ArticleCrudController@index')->name('blog');
});

И отредактируйте файл ArticleCrudController. php в:

namespace laravel-project\vendor\backpack\newscrud\src\app\Http\Controllers\Admin;

Надеюсь, это поможет :)

0 голосов
/ 20 апреля 2020

Сообщение об ошибке

App\Http\Controllers\ArticleCrudController

показывает, что Laravel не может разрешить контроллер в PHP пространстве имен App\Http\Controllers.

Я только что посмотрел код библиотеки и я предлагаю вам заменить

Route::get('/blog', 'ArticleCrudController@index')->name('blog');

на

Route::get('/blog', 'Backpack\\NewsCRUD\\app\\Http\\Controllers\\Admin\\ArticleCrudController@index')->name('blog');
...