Skip to content

Commit 822140e

Browse files
authored
fix Field.__init__ (#742)
1 parent f1552da commit 822140e

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

pypika/terms.py

+4
Original file line numberDiff line numberDiff line change
@@ -548,6 +548,10 @@ def __init__(
548548
) -> None:
549549
super().__init__(alias=alias)
550550
self.name = name
551+
if isinstance(table, str):
552+
# avoid circular import at load time
553+
from pypika.queries import Table
554+
table = Table(table)
551555
self.table = table
552556

553557
def nodes_(self) -> Iterator[NodeT]:

pypika/tests/test_terms.py

+7
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ def test_when_alias_specified(self):
1515
self.assertEqual('bar', str(c1.alias))
1616

1717

18+
class FieldInitTests(TestCase):
19+
def test_init_with_str_table(self):
20+
test_table_name = "test_table"
21+
field = Field(name="name", table=test_table_name)
22+
self.assertEqual(field.table, Table(name=test_table_name))
23+
24+
1825
class FieldHashingTests(TestCase):
1926
def test_tabled_eq_fields_equally_hashed(self):
2027
client_name1 = Field(name="name", table=Table("clients"))

0 commit comments

Comments
 (0)