2017-01-10 60 views
-2

我有一个问题给你。是否有可能在Laravel通过变量从MySQLCSS?我的意思是:laravel - php变成css文件

<div class="progress-bar progress-bar-aqua" 
    style="width: 20%" 
    role="progressbar" 
    aria-valuenow="20" 
    aria-valuemin="0" 
    aria valuemax="100"> 

,我想有从数据库从数据库宽度和aria-value-now了。

+0

肯定。你可以用javascript来做到这一点。从数据库中获取值。通过控制器传递它,然后使用JavaScript来追加它。 –

+0

你有尝试过什么吗? – omxv

回答

0

如果您将自己的样式保留在HTML中而不是单独的scss/css文件中,则可以像使用刀片文件一样使用变量。

style="width: {{$width}}%" 

当视图呈现时,它只是用它的值替换变量。这意味着HTML只会看到一个正常的百分比。

0

由于您使用的是内联CSS,因此使用数据库中的值会更容易。

//Controller 

$cssValue = ValueModel::all(); 
return view('yourBlade', ['css' => $cssValue]); 

//Blade Template 

<div class="progress-bar progress-bar-aqua" style="width: {{ $css->witdh_column }}" role="progressbar" aria-valuenow="{{ $css->area_value }}" aria-valuemin="0" aria valuemax="100"> 
0

是的,它是可能的,并且刀片模板引擎使它变得如此简单。

示例代码。

控制器

public function test() 
{ 

$style_values = Css::select('width', 'aria_value_now')->where('user_id', Auth::id())->first(); 

return view('sample.view', compact('style_values')); 

} 

,并在您view.blade.php

<div class="progress-bar progress-bar-aqua" style="width: {{ $style_values->width}}%" role="progressbar" aria-valuenow="{{ $style_values->aria_value_now }}" aria-valuemin="0" aria valuemax="100">