HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.
How to add custom tables/columns in database via code?
I want to add some custom columns to database tables. So, when I will install or setup my application anywhere my custom tables/columns will automatically insert/update into the database. I want to implement this via code. Thanks in advance!
0
Comments
This is easy, but you have to stick to some conventions to take benefit from all automatisms.
If your plugin has a method called
setup()
it will be called automatically when the plugin is enabled. Therefore it is a good place to initiate the database change. But there is also another method with added functionality. If your plugin has a method calledstructure()
, that method will be called everytime when the forum admin runs example.com/utility/structure, which might be needed if the databse got corrupted or during update processes.Therefore you should use both methods like that:
And in this example, you already see how to create a new row in table Comment. You can find more examples by looking at /applications/dashboard/settings/structrue.php and /applications/vanilla/settings/structrue.php
An you should also take a look at /library/database/class.databasestructure.php and read the comments for e.g. its method
column()