Octobercms 将文件上载到前端
我使用用户插件。我使用了迁移Octobercms 将文件上载到前端,octobercms,Octobercms,我使用用户插件。我使用了迁移 public function up() { Schema::table('users', function($table) { $table->text('sex')->nullable(); $table->date('birthday')->nullable(); $table->string('doc_pho
public function up()
{
Schema::table('users', function($table)
{
$table->text('sex')->nullable();
$table->date('birthday')->nullable();
$table->string('doc_photo')->nullable();
});
}
使字段在管理面板和前端用户帐户中都可编辑
UserModel::extend(function($model){
$model->addFillable([
'sex',
'birthday',
'doc_photo'
]);
});
UsersController::extendFormFields(function($form, $model, $context){
$form->addTabFields([
'sex' => [
'label' => 'Sex',
'type' => 'text',
'tab' => 'Personal info'
],
'birthday' => [
'label' => 'Birthday',
'type' => 'text',
'tab' => 'Personal info'
]
'doc_photo' => [
'label' => 'Photo',
'type' => 'text',
'tab' => 'Documents'
]
]);
});
如何使用将文件上载到服务器。例如,《阿凡达》以下是我在后端的实现方式: 从数据库表中删除doc_photo
public function up()
{
Schema::table('users', function($table)
{
$table->text('sex')->nullable();
$table->date('birthday')->nullable();
});
}
Plugin.php-将doc_photo作为附件而不是字段添加,并作为后端控制器中的文件上载小部件添加
UserModel::extend(function($model){
$model->addFillable([
'sex',
'birthday'
]);
$model->attachOne['doc_photo'] = 'System\Models\File';
});
UsersController::extendFormFields(function($form, $model, $context){
$form->addTabFields([
'sex' => [
'label' => 'Sex',
'type' => 'text',
'tab' => 'Personal info'
],
'birthday' => [
'label' => 'Birthday',
'type' => 'text',
'tab' => 'Personal info'
],
'doc_photo' => [
'label' => 'Photo',
'type' => 'fileupload',
'mode' => file,
'thumbOptions' => [
'mode' => 'crop',
'extension' => 'auto'
],
'useCaption' => true,
'tab' => 'Documents'
]
]);
});
这是用于前端的:
制作一个具有onUpload()函数的组件,并加载身份验证外观:
public function onUpload() {
$user = Auth::getUser();
$user->doc_photo = Input::file("doc_photo");
$user->save();
return Redirect::refresh();
}
要在default.htm部分中找到的HTML/Twig代码:
{{ form_open({files: true, request: 'onUpload'}) }}
<!--File Input-->
<input type="file" name="doc_photo" required="required" class="">
<!--File Input-->
<!--Submit/Upload Button-->
<button type="submit" class="">Upload</button>
{{ form_close() }}
{{form_open({files:true,request:'onUpload'}}}
上传
{{form_close()}}