Instead of hard coding the parameters in parameters.yml
I am trying to load them from database. Not all parameters in parameters.yml needs to be loaded from database just a few, like api details of paypal
In config.yml
I have imported the parameters.php
imports:
- { resource: parameters.php }
If I add static information in parameters.php
like the one below it works fine
$demoName = 'First Last';
$container->setParameter('demoName', $demoName);
However I am not able to fetch information from database table. I thought i should create class and make use of $em = this->getDoctrine()->getManager();
and it should work but it doesn't and i get the error of
Notice: Undefined variable: paypal_data in /opt/lampp/htdocs/services/app/config/parameters.php (which is being imported from "/opt/lampp/htdocs/services/app/config/config.yml").
This is the attempt i made is as following but the code does not seem to go in __construct()
use SymfonyBundleFrameworkBundleControllerController;
use DoctrineBundleDoctrineBundleRegistry;
use DoctrineORMMapping as ORM;
class parameters extends Controller
{
public $paypal_data;
function __construct() {
$this->indexAction();
}
public function indexAction(){
$em = $this->getDoctrine()->getManager();
$this->paypal_data = $em->getRepository('featureBundle:paymentGateways')->findAll();
}
}
$demoName = 'First Last';
$container->setParameter('demoName', $demoName);
$container->setParameter('paypal_data', $this->paypal_data);
Any help will be much appreciated.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…