问题描述
我的应用程序像这样存储订单的价格:
id|price_total|currency|
--|-----------|--------|
1| 127.65|EUR |
2| 197.65|USD |
3| 294.95|EUR |
# BuyOrderCrudController.PHP
public function configureFields(string $pageName): iterable
{
...
yield CurrencyField::new("currency");
yield MoneyField::new('price_total')
->setCurrency('EUR');
...
}
我需要通过从 EUR
字段获取 ->setCurrency('EUR')
或 EUR
值来修复 USD
中的硬编码 currency
。
我不知道要使用什么语法或函数。
解决方法
我从来没有这样的用例,但一个想法是使用easyadmin事件,AfterCrudActionEvent或AfterEntityBuiltEvent,事件调度一个entityDto对象,它拥有你需要的一切(访问实体和字段),你可以获得你的字段和您的财产,并将您的领域设置为它们。