Yii 2.0: yii2-docvault

Documents Management with Check-Out / Check-In

Some web applications require a module to manage documents for logged in users. Yii2-docvault includes the folowing features:

  • Manage document categories
  • Manage documents
  • Upload a new document
  • Set view/modify permissions
  • Check out a document
  • Check in a document
  • View modification logs



  • Yii2


Here is how to install Yii2-docvault using composer. Installation is a quick and easy three-step process.

Step 1: Download Yii2-docvault using composer

Add the following line to the require section of your composer.json file:

    "diggindata/yii2-docvault": "0.0.*@dev"

Run composer update to download and install Yii2-docvault.

Step 2: Configure your application

Add following lines to the modules section in your main configuration file (e.g. config/main.php):

'modules' => [
    'docvault' => [
        'class' => 'diggindata\docvault\Module',
        'dataDir' => '@app/data', // Alias to data directory

Step 3: Update database schema

NOTE: Make sure that you have properly configured db application component.

After you downloaded and configured Yii2-docvault, the last thing you need to do is updating your database schema by applying the migrations:

$ php yii migrate/up --migrationPath=@vendor/diggindata/yii2-docvault/migrations



  • Feb. 4, 2015 v0.0.8
    • Document Permissions: removed debug
    • Document: added attribute label for file
    • Item Views: added button group
    • Documents List/Add button: added categoryId if _GET DocumentSearch exists
  • Feb. 3, 2015: v0.0.6
    • Fixed Log tableName
    • Permissions: added 'All Users'
    • Documents: Enhanced _search form; added 'Checked Out ' icon
  • Feb. 2, 2015: Initial version

Total 3 comments

#18916 report it
jwerner at 2015/02/04 03:04am
Re: Blog gives error => NL nicht bekant.

@aronbos, thanks for the info.

Can you please try again now?

#18913 report it
aronbos at 2015/02/03 04:36pm
Blog gives error => NL nicht bekant.


Onbekende localisatie "nl".


093 /** 094 * Getter magic method. 095 * This method is overridden to support accessing application components 096 * like reading module properties. 097 * @param string $name application component or property name 098 * @return mixed the named property value 099 */ 100 public function __get($name) 101 { 102 if($this->hasComponent($name)) 103 return $this->getComponent($name); 104 else 105 return parent::__get($name); 106 } 107 108 /** 109 * Checks if a property value is null. 110 * This method overrides the parent implementation by checking 111 * if the named application component is loaded. 112 * @param string $name the property name or the event name 113 * @return boolean whether the property value is null 114 */ 115 public function __isset($name) 116 { 117 if($this->hasComponent($name))

#18908 report it
Stefano Mtangoo at 2015/02/02 03:56pm

As usual, Demo site will do good to booster users

Leave a comment

Please to leave your comment.

Create extension
No downloadable files yet