def __init__(self, field=None, table=None):
        """
        :param field: This can be a string of a field name, a dict of {'alias': field}, or
            a ``Field`` instance
        :type field: str or dict or :class:`Field <querybuilder.fields.Field>`

        :param table: Optional. This can be a string of a table name, a dict of {'alias': table}, or
            a ``Table`` instance. A table only needs to be supplied in more complex queries where
            the field name is ambiguous.
        :type table: str or dict or :class:`Table <querybuilder.tables.Table>`
        """
        self.field = FieldFactory(field)
        self.table = TableFactory(table)
        if self.table and self.field.table is None:
            self.field.set_table(self.table)
def __init__ ( self , field = None , table = None ) : self . field = FieldFactory ( field ) self . table = TableFactory ( table ) if self . table and self . field . table is None : self . field . set_table ( self . table )
:param field: This can be a string of a field name, a dict of {'alias': field}, or
            a ``Field`` instance
        :type field: str or dict or :class:`Field <querybuilder.fields.Field>`

        :param table: Optional. This can be a string of a table name, a dict of {'alias': table}, or
            a ``Table`` instance. A table only needs to be supplied in more complex queries where
            the field name is ambiguous.
        :type table: str or dict or :class:`Table <querybuilder.tables.Table>`