ActiveRecord :: StatementInvalid:PG :: InternalError:ERROR:解析错误 - 无效的几何体

时间:2018-05-08 07:30:57

标签: ruby-on-rails geometry postgis

我需要找出距离纬度和经度一定距离的用户。

<DataSearch ... />

我收到此错误 organisation.users.joins(:location) .where("ST_DWithin(ST_GeomFromText('POINT(locations.longitude locations.latitude)', 4326),ST_GeomFromText('POINT(? ?)', 4326), ?)", longitude, latitude, distance) .pluck(:id)

1 个答案:

答案 0 :(得分:0)

您指的是字符串中的列名,因此使用此字符串而不是预期的坐标。

要解决这个问题,您需要将text命令(@NgModule({ imports: [ RouterModule.forRoot([ { path: 'main', component: MainComponent, canActivate: [AuthGuard], children: [{ path: '', component: AccountMainComponent }, { path: 'financial-accounts', component: FinancialAccountsComponent }, { path: 'system-config', component: ConfigSysComponent }, { path: 'conciliacao', component: ConciliacaoContabilComponent }, { path: 'report', component: ReportComponent }, ]} ]) ], exports: [RouterModule] }) export class MainRouting { } )与列值连接起来,最后再连接文本命令的结尾(RouterModule)。结果,列名称不再在单引号内。

'point('