• 0

كيف أمرِّرُ قيم من View نحو Master واستعمالها على إطار العمل Laravel؟

لدي ملف يدعى بـ user.plade.php والذي يستعين بملف master لأخد مختلف الأجزاء المركبة للواجهة، وملف master بدوره يتكون من عدة ملفات من بينها header.blade.php و ما أريده بالضبط هو تمرير بعض القيم من user.bldade.php إلى ملف header.blade.php، وهذه مختلف أجزاء الشيفرة حتى تتضح لديكم الصورة:

/****** Users.blade.php *********/
@extends('shared.master')
@section('title', 'Dashboard')

@section('pagecss')
    <link rel="stylesheet" href="links to css file" />
@endsection

وَ:

/******Shared/master.blade.php ********/
<html>
    <head>
        <title>@yield('title')</title>
        @include('shared.header')
    </head>
    <body >

        @yield('content')

    </body>
</html>

ثم:

/******Shared/header.blade.php ********/
<link rel="stylesheet" href="links to bootstrap" />
@yield('pagecss')
<link rel="stylesheet" href="links to other files" />

لكن الأمر لم ينجح، فكيف أقوم بتمرير قيم من user.blade.php إلى master ثم إلى header.blade.php؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يمكنك فعل ذلك، وإليك الطريقة الصحيحة لتمرير قيمة من واجهة فرعية  إلى Master ثم إلى جزء header:

هذا جزء Users.blade.php  :

<?php $pagecss = '<link rel="stylesheet" href="links to css file" />'?>
    /****** Users.blade.php واجهة*********/
    @extends('shared.master')
    @section('title', 'Dashboard')

هذه صفحة Master، وللتذكير فقط فهذه الصفحة تعتبر بمثابة الهيكل العام لباقي الصفحات، حيث تعتبر المجمع الرئيسي لها:

/******Shared/master.blade.php صفحة ********/
<html>
    <head>
        <title>@yield('title')</title>
        @include('shared.header')
    </head>
    <body >

        @yield('content')

    </body>
</html>

صفحة header.blade.php، وهو الجزء العلوي من كل الصفحات:

/******Shared/header.blade.php  جزء ********/
<link rel="stylesheet" href="links to bootstrap" />
@if(isset($pagecss))
    {{ $pagecss }}
@endif
<link rel="stylesheet" href="links to other files" />

هذا هو Master  في حالتك:

<html>
<head>
    @include('test.header')
</head>
<body >

@yield('content')

</body>
</html>

header.blade.php :

<link rel="stylesheet" href="links to bootstrap" />
@yield('pagecss')
<link rel="stylesheet" href="links to other files" />

users.blade.php :

@extends('test.main')

@section('content')
    CONTENT
@endsection

@section('pagecss')
    <link rel="stylesheet" href="links to css file" />
@endsection

في نهاية الأمر سيكون الحاصل النهائي على الشكل التالي:

<html>
<head>
    <link rel="stylesheet" href="links to bootstrap" />
    <link rel="stylesheet" href="links to css file" />
    <link rel="stylesheet" href="links to other files" />
</head>
<body >

    CONTENT

</body>
</html>

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن