我在许多来源中看到,当我尝试以编程方式保存Drupal中的坐标时,我应该使用geofield_compute_values(),但它对我不起作用。该函数在Drupal 8.5.2中不存在。
我已经使用Composer安装了Geofield模块,并且我可以像往常一样在管理区域使用它。储蓄没有问题。
这是我尝试过的代码,它返回一个关于不存在的函数(geofield_compute_values())的错误。
$geofield_data = geofield_compute_values(['lat' => $lat, 'lon' => $lon ], GEOFIELD_INPUT_LAT_LON);
$cbisProduct->set('field_koordinater', $geofield_data);我也尝试过,没有成功的结果,也没有错误。
$geofield = [
'geom' => "POINT (" . $lon . " " . $lat . ")",
'geo_type' => 'point',
'lat' => $lat,
'lon' => $lon,
'left' => $lon,
'top' => $lat,
'right' => $lon,
'bottom' => $lat,
];
$cbisProduct->set('field_koordinater', $geofield);我也尝试了在如何在岩土工程中逐步节约液化天然气和LAT中给出的解决方案,但也不起作用。
如何以编程方式保存坐标?
发布于 2018-12-07 07:16:23
试试这个:
$entity->set('field_geofield_name', [sprintf("'POINT (%s %s)'", $longitude, $latitude)]);干杯!
https://drupal.stackexchange.com/questions/260715
复制相似问题