ColumnList ForeignKeyProxyModelMap::getColumnsPartOfForeignKey() const
{
  ColumnList list;

  const auto pred = [&list](int column){
    return !list.contains(column);
  };
  for(const auto & item : mMap){
    const auto & fk = item.foreignKey();
    std::copy_if(fk.begin(), fk.end(), std::back_inserter(list), pred);
  }

  return list;
}