0

我正在尝试构建一个网站构建器,我想手动存储插件/portlet的HTML结构,用户可以在其中拥有结构和他们插入的任何可编辑数据,使用控制器中的序列化存储到数据库中,现在我得知 MySQL 不保存 html 数据或者说存储不安全,我决定将基本结构以 JSON 格式存储到单独的文件中,现在我不想将这些 JSON 文件放在我的公共文件夹目标中,我浏览了 Seeder 文档和教程来查找文件的路径并获取 JSON 数据。也经历了这个教程

并遇到以下课程:

<?php

use Illuminate\Database\Seeder;
use App\User;

class PortletTableSeeder extends Seeder {

   public function run()
   {
      $json = File::get("database/data/portlets.json");
      $data = json_decode($json);
      foreach ($data as $obj) {
          'id' => $obj->id,
          'html_code' => $obj->html_code,
          'dummy_data' => $obj->dummy_data,
          //more objects..
         ));
       }
    }

}

?>

这是执行此操作的正确方法吗?并将其调用到刀片文件中,例如,如果 gulpfile 中的主题/portlet 的 id 可以像这样,我有 mixstyles 的名称:

<link href="css/{{$id}}.css" rel="stylesheet" type="text/css" />
4

1 回答 1

1

我认为最好的方法是在前端管理 HTML 代码(使用刀片)。从数据库获取数据集并在前端创建动态页面。

您可以设计单独的刀片文件并动态加载。

public function create()
{
   $data = Portlet::get();

   if(condition)
       return view('design.form1',compact('data'));
   else
       return view('design.form2',compact('data'));
}

如果您想将 json 数据保存在 mysql DB 中,请点击链接。

如何在 MySQL 数据库中使用 JSON 数据字段

于 2016-07-03T10:28:45.857 回答