Your search did not match any results.
File Manager

Entity Framework ORM

The File Manager widget allows you to manage file system items that use the Entity Framework ORM to link to a database. You can use the Remote File Provider to connect to the file system on the client side. To process the widget's HTTP requests on the server, create your own file provider, which implements the IFileProvider interface.

Copy to CodeSandBox
Apply
Reset
<template> <dx-file-manager :file-provider="remoteFileProvider" :allowed-file-extensions="allowedFileExtensions" :customize-detail-columns="customizeDetailColumns" current-path="Documents/Reports" > <dx-permissions :create="true" :copy="true" :move="true" :remove="true" :rename="true" /> </dx-file-manager> </template> <script> import { DxFileManager, DxPermissions } from 'devextreme-vue/file-manager'; import RemoteFileProvider from 'devextreme/ui/file_manager/file_provider/remote'; const remoteFileProvider = new RemoteFileProvider({ endpointUrl: 'https://js.devexpress.com/Demos/Mvc/api/file-manager-db' }); const allowedFileExtensions = []; export default { components: { DxFileManager, DxPermissions }, data() { return { remoteFileProvider, allowedFileExtensions }; }, methods: { customizeDetailColumns(columns) { var fileSizeColumn = columns.filter(function(c) { return c.dataField === 'fileSize'; })[0]; columns.splice(columns.indexOf(fileSizeColumn), 1); var modifiedColumn = columns.filter(function(c) { return c.dataField === 'dateModified'; })[0]; modifiedColumn.caption = 'Modified'; columns.push({ caption: 'Created', dataField: 'created', dataType: 'date' }); columns.push({ visibleIndex: 2, caption: 'Modified By', dataField: 'modifiedBy' }); return columns; } } }; </script>
import Vue from 'vue'; import App from './App.vue'; new Vue({ el: '#app', components: { App }, template: '<App/>' });
<!DOCTYPE html> <html> <head> <title>DevExtreme Demo</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/19.2.4/css/dx.common.css" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/19.2.4/css/dx.light.css" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/19.2.4/css/dx-gantt.css" /> <script src="https://unpkg.com/core-js@2.4.1/client/shim.min.js"></script> <script src="https://unpkg.com/systemjs@0.21.3/dist/system.js"></script> <script type="text/javascript" src="config.js"></script> <script type="text/javascript"> System.import('./index.js'); </script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="app"> </div> </div> </body> </html>
System.config({ transpiler: 'plugin-babel', paths: { 'npm:': 'https://unpkg.com/' }, map: { vue: 'npm:vue@2.6.3/dist/vue.esm.browser.js', 'vue-loader': 'npm:dx-systemjs-vue-browser@latest/index.js', 'devextreme': 'npm:devextreme@19.2', 'devextreme-vue': 'npm:devextreme-vue@19.2', jszip: 'npm:jszip@3.1.3/dist/jszip.min.js', 'quill': 'npm:quill@1.3.7/dist/quill.js', 'devexpress-diagram': 'npm:devexpress-diagram', 'devexpress-gantt': 'npm:devexpress-gantt', 'plugin-babel': 'npm:systemjs-plugin-babel@0/plugin-babel.js', 'systemjs-babel-build': 'npm:systemjs-plugin-babel@0/systemjs-babel-browser.js' }, meta: { '*.vue': { loader: 'vue-loader' } }, packages: { 'devextreme-vue': { main: 'index.js' }, 'devextreme': { defaultExtension: 'js' } }, babelOptions: { sourceMaps: false, stage0: true } });