【发布时间】:2020-07-18 01:42:24
【问题描述】:
我正在使用 Laravel 7 开发一个慈善网站,我有一个主布局文件,它已扩展为两个视图,index 视图和 show 视图,这两个视图位于同一目录中并用于测试目的,我从index 视图复制代码并将其粘贴到show 视图中,但index 视图正确显示样式和所有内容,但是当show 视图加载时,它没有css 样式和js,下面是所有相关文件:
layout 视图:
<!DOCTYPE html>
<html lang="en">
<head>
@include('partials.header')
@yield('styles')
</head>
<body>
@include('partials.nav')
@yield('content')
@include('partials.footer')
<!-- loader -->
<div id="ftco-loader" class="show fullscreen"><svg class="circular" width="48px" height="48px">
<circle class="path-bg" cx="24" cy="24" r="22" fill="none" stroke-width="4" stroke="#eeeeee"/><circle
class="path" cx="24" cy="24" r="22" fill="none" stroke-width="4" stroke-miterlimit="10"
stroke="#F96D00"/></svg></div>
<script src="js/jquery.min.js"></script>
<script src="js/jquery-migrate-3.0.1.min.js"></script>
<script src="js/popper.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.easing.1.3.js"></script>
<script src="js/jquery.waypoints.min.js"></script>
<script src="js/jquery.stellar.min.js"></script>
<script src="js/owl.carousel.min.js"></script>
<script src="js/jquery.magnific-popup.min.js"></script>
<script src="js/bootstrap-datepicker.js"></script>
<script src="js/jquery.fancybox.min.js"></script>
<script src="js/aos.js"></script>
<script src="js/jquery.animateNumber.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?
key=AIzaSyBVWaKrjvy3MaE7SQ74_uJiULgl1JY0H2s&sensor=false"></script>
<script src="js/google-map.js"></script>
<script src="js/main.js"></script>
@yield('scripts')
</body>
</html>
这是正常工作的index 视图:
@extends('layout')
@section('content')
<div class="site-section fund-raisers bg-light">
<div class="container">
<div class="row mb-3 justify-content-center">
<div class="col-md-8 text-center">
<h2>All Fundraisers</h2>
<p class="lead">These are the fundraisers that require your little help to give hope to the
ones in need.</p>
</div>
</div>
</div>
<div class="container-fluid">
<!-- <div class="row"> -->
<div class="col-md-12 block-11">
<div class="nonloop-block-11 owl-carousel">
@foreach($causes as $cause)
<div class="card fundraise-item">
<a href="#"><img class="card-img-top" src="{{ asset($cause->image) }}" alt="Image
placeholder"></a>
<div class="card-body">
<h3 class="card-title"><a href="{{ route('causes.show', $cause->id) }}">{{ $cause->title
}}</a></h3>
<p class="card-text">{{ $cause->body }}</p>
<span class="donation-time mb-3 d-block">Last donation 1w ago</span>
<div class="progress custom-progress-success">
<div class="progress-bar bg-primary" role="progressbar" style="width: 80%" aria-
valuenow="80" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<span class="fund-raised d-block">$12,000 raised of $30,000</span>
</div>
</div>
@endforeach
</div>
</div>
<br />
<div class="d-flex justify-content-center align-items-cente"> {{ $causes->links() }} </div>
</div>
</div>
@endsection
这是show 视图,它显示了一项但无法正常工作:
@extends('layout')
@section('content')
<div class="site-section fund-raisers bg-light">
<div class="container">
<div class="row mb-3 justify-content-center">
<div class="col-md-8 text-center">
<h2>All Fundraisers</h2>
<p class="lead">These are the fundraisers that require your little help to give hope to the
ones in need.</p>
</div>
</div>
</div>
<div class="container-fluid">
<!-- <div class="row"> -->
<div class="col-md-12 block-11">
<div class="nonloop-block-11 owl-carousel">
<div class="card fundraise-item">
<a href="#"><img class="card-img-top" src="{{ asset($cause->image) }}" alt="Image
placeholder"></a>
<div class="card-body">
<h3 class="card-title"><a href="">{{ $cause->title }}</a></h3>
<p class="card-text">{{ $cause->body }}</p>
<span class="donation-time mb-3 d-block">Last donation 1w ago</span>
<div class="progress custom-progress-success">
<div class="progress-bar bg-primary" role="progressbar" style="width: 80%" aria-
valuenow="80" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<span class="fund-raised d-block">$12,000 raised of $30,000</span>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
这是controller 文件:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Cause as Cause;
class CausesController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$causes = Cause::take(15)->paginate(5);
return view('causes.index', ['causes' => $causes]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
$cause = Cause::findOrFail($id)->first();
return view('causes.show', ['cause' => $cause]);
}
这是路由的web.php 文件:
<?php
use Illuminate\Support\Facades\Route;
Route::get('/', 'HomeController@index')->name('home.index');
Route::get('/causes', 'CausesController@index')->name('causes.index');
Route::get('/causes/{id}', 'CausesController@show')->name('causes.show');
我已经尽我所能找到了两天的解决方案,但没有任何帮助,我们将不胜感激在这方面的任何帮助。
【问题讨论】:
-
Show View的路径是什么???
-
我认为这不是您的视图问题。好像你的代码没有到达你的 show() 函数。
-
@AkshayKhale : 我添加了路由文件,你现在可以看到了。
-
@Ts8060 : 如果代码无法到达 show() 方法,那么视图将不会被渲染,这里视图被渲染,但是 css 和 js 格式不存在。
-
@AbdulRaheemGhani 对不起。我以为 Show View 没有渲染。使用 url() 函数调用 js 和 css。 url('js/aos.js') 像这样。或者最简单但不推荐的方法是在你的 js 和 css 之前添加 / 像这样