0
"Database.db_search (search) NameError : name 'Database'이 정의되지 않았습니다."오류가 계속 발생합니다.NameError : name 'Database'가 정의되지 않았습니다.
아무도 내가 정말 고맙게 생각한다면, 나는 또한 Stack Overflow에 익숙하지 않으므로 질문을하는 전반적인 레이아웃에 관해서는 사과 할 것입니다.
감사합니다.
데이터베이스 파일 :
from Staff import *
def db_search(self):
query = "SELECT * FROM customer_information WHERE Last_Name = %s"
cursor.execute(query, (last_name,))
for (Last_Name) in cursor:
print(Last_Name)
return last_name
직원 파일 :
from Database import *
def gett():
search = search_entry.get()
Database.db_search(search)`
내 대답 외에도 일부 순환 가져 오기가 왜 필요한지 묻고 싶습니다. 'Staff'가'Database'를 모두 가져 오는 경우 왜'Database'는'Staff'를 모두 가져와야합니까 ?? –
안녕하세요 그렉, 정말로 내 코드를 살펴볼 시간을 내 주셔서 감사합니다. 프로그램의 다른 곳에서 진행되는 다른 메소드/기능이 있다는 순환 수입이있는 이유입니다. 네가 원한다면 나에게 보여 줄 수 있고 너는 나에게 개선 방법에 대한 조언을 줄 수있다. 시간 동창자를 진심으로 감사드립니다. 다시 한번 감사 드리며 좋은 밤을 보내십시오. – Notorious
안녕하세요. 솔직히 말해서 모든 코드를 살펴보고 개선점을 제안하지 않을 것이며 시간이 없습니다. 제가 말하고자하는 것은 일반적으로 순환 수입은 나쁜 생각입니다 (http://stackabuse.com/python-circular-imports/). 일반적으로 각 모듈의 내용을 검토하면 순환 종속성의 필요성을 제거하는 기능을 함께 그룹화하는 방법을 알게 될 것입니다. 항상 그런 경우는 아니며 때로는 원형 디프 로프를 사용하는 것이 유효하지만 대부분 빈약 한 디자인을 나타내며 부작용/이상한 버그를 유발할 수 있습니다. –