在Laravel中扩展刀片引擎以使用不同的视图目录

时间:2016-09-16 15:17:18

标签: php laravel laravel-blade

我正在开发一个Laravel项目,我对它很陌生。目前,我想使用刀片模板来呈现视图,但我希望它能够在#import <UIKit/UIKit.h> @interface ViewController : UIViewController <UITextFieldDelegate, UINavigationControllerDelegate, UIImagePickerControllerDelegate> { } @property (strong, nonatomic) NSMutableArray *photoData; @property (weak, nonatomic) IBOutlet UIImageView *imageView; @end 而不是默认- (IBAction)takePhoto:(id)sender { UIImagePickerController *picker = [[UIImagePickerController alloc] init]; picker.delegate = self; picker.allowsEditing = YES; picker.sourceType = UIImagePickerControllerSourceTypeCamera; [self presentViewController:picker animated:YES completion:NULL]; } - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { UIImage *chosenImage = info[UIImagePickerControllerEditedImage]; self.imageView.image = chosenImage; [picker dismissViewControllerAnimated:YES completion:NULL]; } - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker { [picker dismissViewControllerAnimated:YES completion:NULL]; } 等不同目录中搜索视图。 <custom_dir>\views将是动态的(它可以是变量)。

有什么想法吗?我正在考虑一个自定义服务提供程序,然后扩展默认函数,在其中呈现Laravel中的视图。但不确定如何实现它。

修改 我有用户link来扩展刀片模板引擎中include函数的默认功能。但这会覆盖包含功能。我想更改路径,然后调用默认刀片功能

2 个答案:

答案 0 :(得分:1)

您可以将路径附加到配置:

1)静态地修改文件config/view.php

'paths' => [
    realpath(base_path('resources/views')),
    //more paths here
],

2)在运行时动态:

$paths = config('view.paths');
$paths[] = $newPathToAdd;
config(["view.paths" => $paths ]);

我建议你适度使用它,否则你最终会得到一堆没有实际指定目的的目录。

答案 1 :(得分:0)

您可以在resources\views目录中创建自定义目录,并使用以下内容:

return view($customDirectory.'.index');

其中index是自定义目录中的模板。