Konštanty v config.neon sa neexpanduju

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
bazo
Člen | 620
+
0
-

niekedy davno fungovalo pozuivanie konstant v .neon konfigoch
napriklad

receiptValidator:
    endpoint: \ReceiptValidator\iTunes\Validator::ENDPOINT_PRODUCTION

skusal som dat aj :: pred konstantu, tusim to tiez niekedy fungovalo

toto by malo vygenerovat taketo php v skompilovanom kontaineri

<?php
'receiptValidator' => array(
	'endpoint' => 'https://sandbox.itunes.apple.com/verifyReceipt',
);
?>

namiesto toho to vygeneruje toto, nazov konstanty sa vlozi ako text, namiesto realnej hodnoty

<?php
'receiptValidator' => array(
	'endpoint' => '\ReceiptValidator\iTunes\Validator::ENDPOINT_PRODUCTION',
);
?>

je to bug, alebo bola tato vlastnost odstranena? alebo robim nieco zle ja?

petr.jirous
Člen | 128
+
0
-
receiptValidator:
     endpoint: @ReceiptValidator\iTunes\Validator::ENDPOINT_PRODUCTION

takto by to melo fungovat.

petrknap
Člen | 6
+
0
-

Ahoj, mám podobný problém. Na začátku neonu mám:

constants:
    DATABASE_HOST: 127.0.0.1

parameters:
    database:
        host: ::DATABASE_HOST

Následně parametr používám pro doctrine:

doctrine:
    host: %database.host%

což (špatně) generuje:

'host' => '::DATABASE_HOST'

A dále pro moji službu:

services:
    - MyService(DatabaseHelper::createPdo(%database%))

což (správně) generuje:

'host' => DATABASE_HOST

Tuší někdo jak tohle chování sjednotit?

David Grudl
Nette Core | 8082
+
+1
-

bazo napsal(a):

niekedy davno fungovalo pozuivanie konstant v .neon konfigoch
napriklad

receiptValidator:
    endpoint: \ReceiptValidator\iTunes\Validator::ENDPOINT_PRODUCTION

Přímý zápis konstant funguje pouze v definici služeb, jinde by ale mohlo fungovat ::constant(ReceiptValidator\iTunes\Validator::ENDPOINT_PRODUCTION).

petrknap napsal(a):

Ahoj, mám podobný problém. Na začátku neonu mám:

To je podobná situace, ale konstantě bych se jednoduše vyhnul:

parameters:
    database:
        host: 127.0.0.1
paranoiq
Člen | 392
+
+2
-

je nějaká možnost jak použít konstantu jako klíč? tam ani ::constant() nefunguje

Editoval paranoiq (25. 11. 2016 10:27)