Column name alias error.
Column name alias error.
I am using datatables v1.10.2 server side code and am joining multiple tables. All is well until I give a column name an alias name. The reason I am giving the columns alias names is because I have same column names across multiple tables. The query still collects all the data just fine but datatables is not able to read the data back into the table.
I am receiving the following error:
DataTables warning: table id=DataTables_Table_0 - Requested unknown parameter 'table1.company_name AS 'name1'' for row 0. For more information about this error, please see http://datatables.net/tn/4
Unfortunately the link did not provide me with any solutions for this issue.
Here is the initialization code that I am using:
$('#my-table').DataTable({
"processing": true,
"serverSide": true,
"ajax": {
"type": "POST",
"dataType": 'json',
"url": '/server.php'
},
"columns": [
{
"title": "Company Name 1",
"data": "table1.company_name AS 'name1'"
},{
"title": "Company Name 2",
"data": "table2.company_name AS 'name1'"
}
]
});
Is there something I can do within the server.php script so that datatables recognizes the parameter "table1.company_name AS 'name1"?
If I have not provided enough information please let me know.
Thanks to all!
Replies
I don't think that is in the documentation anywhere - and if it is could you point it out to me so I can remove it? Aliases are not supported in the
data
option and likely never will be.What does your returned JSON data look like? Basically you want to use the
columns.data
option to set the property name of the data you want to use for that column.Allan
Yeah I could not find anything on this within the documentation anywhere so that's why I resorted to the forums.
On another note, I did remedy my situation by setting the columns.data back to normal and then simply adding a small tweak to the server.php code.
So my datatables initialization code was like so:
And then when collecting all the columns within the server.php code I added a small check like so to add the column alias name:
Then the rest of the script worked as it normally does..
Thanks very much for the reply and confirming that Allan!
Good to hear you got it working.
Allan