我已将数据表(https://datatables.net)集成到管理面板中的记录列表中。当我从单个表中获取数据/结果时,所有默认功能(搜索,排序)都正常工作。
但是当我需要加入两个表时,由于Datatable自动搜索您在JS代码中命名的每一列,我面临以下错误。
错误:
import org.apache.spark.sql.functions._
df.withColumn("range",
when($"articles" > 0 and $"articles" <= 100, lit("1-100"))
.otherwise(
when($"articles" > 100 and $"articles" <= 10000, lit("101-10000")).otherwise(lit("others"))
)
).groupBy("range").agg(sum($"articles")).orderBy("range").show
// +---------+-------------+
// | range|sum(articles)|
// +---------+-------------+
// | 1-100| 109|
// |101-10000| 202|
// | others| 2010007|
// +---------+-------------+
JS代码:
Column not found: - Unknown column
我该如何解决?有什么建议吗?
答案 0 :(得分:0)
经过多方努力,我找到了解决方案。
简单地说,您只需要传递新属性“name”以及数据,以便数据表搜索该列。
{ data: "iBookingId","width": "3%","bSortable":false},(=> From booking)<br>
{ data: "vName","width": "10%","bSortable":false},(=> From users)<br>
{ data: "email","width": "15%","bSortable":false},(=> From users)<br>
{ data: "dDate","width": "7%","bSortable":false},(=> From booking)<br>
PS:不要将{ data: "iBookingId" ,"width": "3%","bSortable":false},
{ data: "vName",name: 'users.vName' ,"width": "10%","bSortable":false},
{ data: "email",name: 'users.email' ,"width": "15%","bSortable":false},
{ data: "dDate" ,"width": "7%","bSortable":false},
作为补丁应用。 :P