Laravel application versioning - laravel

I have a question. How do you handle versioning and breaking changes (Especially database changes) in your Laravel applications? Ill try to explain a little why this is an issue for me.
Right now the only real versioning we did in our Laravel application was in the API's. We just used a new version prefix for the api calls and linked them to the correct controller based on the version. (e.g. prefix => v1, controller route => 'Api\V1\FooBarController'. If we had a new version we just made a copy from the old controller and modified it to our liking.
Now our issue. For our next version (v3) we have ALOT of database changes and decided to just make a separate database with a new connection and migrate any needed information over from our old database to the new one. This way we are able to keep everything working for our older API version (v2). But because we have alot of changes in the database we need to change alot in the models too.
Should i also separate my models in different folders with a version prefix? Or im i doing this totally wrong in general? Im a bit lost and would like to hear how you guys handle this.
Thank you in advance.

Related

OctoberCMS (Laravel) + Vue.js + Tailwind CSS Best Setup

I am new with OctoberCMS. There are few tutorials in the internet. May I ask what is the best setup may I use or possible setup may I use with this web tech stacks?
We have a project and the requirement is we need to use octobercms so that's why we have to used this octobercms.
Possible Setup:
Micro Service Setup?
Two seperate folder for OctoberCMS and Vue.js. The communication would be an API Request calls.
Then for the deployment part for the production, we will use the dist folder from Vue.js Folder. I'm not 100% sure but I think this will be my initial thought that will be possible.
May I ask for any suggestions or clarifications on what will I use project setup. Thank you.
While it would be entirely possible to have two separate web properties with October providing the API, you can also just use Vue within an October CMS theme itself. See https://github.com/scottbedard/vuetober for more information on doing that.
If your project is more of a traditional CMS requirement then I would recommend at least trying the Vuetober approach. If it's a lot more complex and is mostly utilizing October for its powerful backend features, then the API-only approach could work fine too.
The main reason you'd want to go with running vuetober is if you were going to be utilizing the AJAX framework provided by October. You can still technically use it even when October is being run as a headless CMS just providing an API, but it gets more complicated with CORS and some other stuff you have to setup to make sure it works properly.

Helpme with own functions in api-platform

recently I have been working with symfony 4 in search of some solution for the creation of web services api-rest and I have found api-platform. After several days trying, because I do not have much knowledge of symfony, I managed to raise the API for an entity that I created by default. It turns out that now I have the doubt of how to add to the api methods other than those that are by default, say the put, the get and others that are already by default, I want to be able to add to my entity the methods that I estimate necessary and with the name that I want. Please I would appreciate your help with some form or some simple steps that allow me to add new methods to the api always keeping in mind that I do not have much knowledge in the matter.
try to avoid endpoint proliferation as much as possible, think REST
the recommended way to hook your own logic in API Platform is using the built-in events
if you really need to add custom endpoints, here is a dedicated documentation entry, but it should be your last resort (see 1/)

CS-Cart: integrating Fishbowl

I am developing a cs-cart based website and my client wants to integrate Fishbowl into his website.
I have searched an add-on for it, but there is no one for me.
I have experience developed a simple add-on and, now I am going to build one add-on to integrate fishbowl.
Please guide me if you have solid experience on integrating fishbowl and cs-cart or another warehouse solution for cs-cart.
I don't understand why the fishbowl doesn't provide or developed the add-on for it.
Please help!
Thanks for reading!
Well, there are a few things to watch out for, and therefore a number of options.
Firstly, what does your client really want. Does he want the stock to be updated on the fly, or once a night? If the client wants to stock to be updated on the fly you will need to add some sort of post function for updating products to also execute your code. If your client wants it only once a night you could just get away by sending every product in the database (with your selected columns).
Secondly, try using object oriented code. If you are really into PHP you will know what I mean by this. Otherwise dont bother (or try learing PHP Object Oriented), though I must note that this can make your addon significantly faster.
Thirdly, use the provided dbquery function
If you have any more questions regarding this, feel free to ask.

Overriding i18n Messages to use database Play framework

In my company they tend to ask some extremly weird features, they want me to load dynamic language files, is there a way to solve this issue without having to rewrite the whole Messages provider of play framework, and instead use some files stored somewhere on the server to handle internationalization?
this could save me a month of work because i've already wrote a huge application (been working on it for a year now) and they want to make all the labels customizable by client.
any help, or any suggestions?
i'm using play framework latest version.
Sadly there is not really much customization options in the Messages API. One idea that might work is to subclass MessagesPlugin with a custom implementation of the api method and provide strings from the database there and then register that as a plugin in your app.

Creating simple CRUD frontend component in joomla1.5

I am trying to convert a php application to joomla1.5 app. I have read some docs on how to create components in joomla1.5 but however i am lost at the best approach to create a simple CRUD frontend Component.
Here are my few questions
1) Should i perform my CRUD operations using JTable or simply use models and write my insert,update,select and delete scripts in the methods?
2) Where should this table class be placed if JTable
Thanks
Ok, first thing before you get too far is to upgrade to 2.5. There is no point in developing anything for software that is reaching end of life in about 60 days.
Next, anything dealing with the database should be put in the model. In Joomla it should be pretty straight forward, have you ready the MVC tutorial? Start with that, it should clear things up.
http://docs.joomla.org/Developing_a_Model-View-Controller_(MVC)_Component_for_Joomla!2.5
Yeah, forget Joomla 1.5 and then use this scaffolding tool

Resources