Hello World!
Have a question about some problem:
In our project we have table PayTransactions, that linked with PrivateMembersData through “Member” field.
So records in PayTransactions table like this:
ID Member Title Amount IsPay
C933AD8B-F01E-4115-8FA7-63DFC534186B D02AE17E-8D1B-422D-8830-F6EDCBB680D9 “Some info” 10.00 True
0F0D4621-C914-4526-9FBE-0499C4D47ABC E87AA41C-4F67-40C5-A878-0B0BDB1BF00D “Some info2” 10.00 False
Than we need to select PrivateMembersData with two conditions:
select all who paid
select all who not paid
So we get this query :
export function getUsersForAdmin ( name , payStatus ){
return wixData .
query ( “Members/PrivateMembersData” ).
contains ( “name” , name ).
find ().
then ( function ( results ){
console . log ( "results.items.length = " + results . items . length );
let convertedUsers = results . items . map ( item => { return formatUserForShow ( item );}); //convert to view model
return selectActiveUsersPlans ( convertedUsers . map ( item => item . _id )). then ( function ( plans ){ //select child records for all selected users
let preparedUsers =;
if ( plans . error == “” ){
for ( let i = 0 ; i < convertedUsers . length ; i ++){
let userItem = convertedUsers [ i ];
let userPlans = plans . data . filter ( m => m . userCode == userItem . _id );
convertedUsers [ i ]. activePlanInfo = concatUserPlansToStr ( userPlans ); //fill text info about pay status
switch ( payStatus ){ //filter using pay status
case “paid” :
if ( userPlans . length != 0 ){
preparedUsers . push ( convertedUsers [ i ]);
}
break ;
case “notpaid” :
if ( userPlans . length == 0 ){
preparedUsers . push ( convertedUsers [ i ]);
}
break ;
default :
preparedUsers . push ( convertedUsers [ i ]);
break ;
}
}
}
return { error : “” , data : preparedUsers };
}). catch ( function ( error ){
return { error : error };
})
}). **catch** ( **function** ( error ){
**return** { error : error };
})
}
It’s works, but now we want to use paging for our query " PrivateMembersData". Of course we can split to pages our resulting list “preparedUsers”, but we think that it too slow and so beautiful like it must to be )
Is there is some way to query linked table from " PrivateMembersData", something like
wixData .
query ( “Members/PrivateMembersData” ).
contains ( “name” , name ).
include(" PayTransactions “).
ea(” PayTransactions.IsPaid",true)
find ()
…
In other words - can we query Parent entity from Child entity in one query ? (everywhere examples of only the reverse process, like from Child to Parent)