laravel - 我可以从控制器创建控制器吗?
问题描述:
我有一个控制器来创建一个控制器。 SiteController就是一个例子。laravel - 我可以从控制器创建控制器吗?
public function createSiteController() {
$controller_name = "SiteController";
Artisan::call("make:controller",
[
"name"=>$controller_name
]);
}
它给我下面的错误。
file_put_contents(/Volumes/Data/www/cms/app/Http/Controllers/SiteController.php): 未能打开流:权限被拒绝
试图设置chmod("/Volumes/Data/www/cms/app/Http/Controllers", 0777)
,但它是不允许。
编辑:当然,我不想使用0777.这只是一个例子。我永远不会使用它。我只是说
答
所以,我有一个问题,使用控制器创建一个控制器。我无法使用artisian命令来完成它。
为什么我需要那个? 我创建了一个artisian命令。像这样的东西。 (PHP artisian CMS:控制器controllerName)
应当扩展到BaseAdminController而非默认控制器。所以我制作了一个模板来创建一个自定义控制器。就像laravel本身一样。
我已经使用以下步骤解决了此问题。 *首先,您需要在临时文件夹中创建一个新文件。 *操纵/改变任何你想要的文件。 *并使用副本命令将该文件(我的情况下的控制器)复制到您的Controller文件夹。
为什么你甚至需要这样做?它闻起来像是完全奇怪和破碎的设计充其量是 –
你怎么能这么说?我正在构建一个CMS,您可以在其中动态创建控制器和模型。我可以在终端命令的帮助下做到这一点。每个人都有自己的要求如果你不想回答可以。 –
尽管每个人都有理由去做某些事情,但请您重新考虑一下,从您的许可策略开始,“将文件权限设置为777”绝不是一个好主意。为什么要创建控制器,您如何计划编辑控制器内容? – milo526