Cakephp 3 Cache metadata issue or database cache

behavior

#1

When i add new column in user table and login then all data return but new added column not get in array .When i change the cacheMetadata to false then it will return , so what is the problem exactly . Should i always false cache meta data?

‘className’ => ‘Cake\Database\Connection’,
‘driver’ => ‘Cake\Database\Driver\Mysql’,
‘persistent’ => false,
‘host’ => ‘localhost’,
/**
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
/
//‘port’ => ‘non_standard_port_number’,
‘username’ => '
’,
‘password’ => ‘’,
‘database’ => '
*****’,
‘encoding’ => ‘utf8’,
‘timezone’ => ‘UTC’,
‘flags’ => [],
‘cacheMetadata’ => false, // when it true it does not give me some column from table
’log’ => false,


#2

Actually its a good idea to cache metadata, but when you create a new column you have to clear the cache


#3

Hi,

as Diego said, you just have to clear the whenever you added or removed columns.
This can be done through the DebugKit (Cache-Tab);
When you use the default-Cache (files) you can delete the cache by removing the files in the cache-folder (project-base/tmp/cache/*);
If you configured memcached or redis as you caching engine, you can simply restart these.

Hope this helps