0

django api を使用して Web サイトを作成しています。問題は、奇妙なインポート エラーが発生することです。ファイル内に別のファイル内の別の関数を呼び出す関数があり、それが最初のファイル内の 3 番目の関数を呼び出します。

問題は、その 3 番目の機能の間です。インポートしようとすると、エラーが発生します

cannot import deletefromS3.

完全なスタック トレースを以下に示します。

http://dpaste.com/1288190/

2 つのモジュールのスニペットを次に示します。

topichandler.py:

from sdbhandler.mediahandler import deleteMediaParent
def deletefromS3(itemid,folder):
itemid=folder+itemid
bucket = connect_s3()
for key in bucket:
    fname=key.split(".")[0]
    if(fname==itemid):
        bucket.delete_key(key)
        return []


def deleteTopic(itemid,parentId='NULL'):
    sdb=connect()
    domain= sdb.get_domain(DOMAIN)
    rootitem = domain.get_item(itemid)
    if(parentId=='NULL'):
          query= 'select * from ' + DOMAIN + ' where itemName()="'+itemid+'"'
          rs = domain.select(query)
    else:
          rs = [rootitem]
    for  item in rs:
          deleteMediaParent(item.name)
          deletefromS3(item.name,'topicsK2/')
          domain.delete_attributes(item.name)
    deleteMediaParent(rootitem.name)
    deletefromS3(rootitem.name,'topicsK2/')
    domain.delete_attributes(rootitem.name)

mediahandler.py:

from sdbhandler.topichandler import deletefromS3
def deleteMediaParent(parentid):
sdb=connect()
domain = sdb.get_domain(DOMAIN)
query = 'select * from '+ DOMAIN + 'where ' +FIELD_TopicID + ' = "' + parentid + '"'
rs = domain.select(query)
for item in rs:
    deleteQuestionParent(item.name)
    deletefromS3(item.name,'mediaK2/')
    domain.delete_attributes(item.name)

依存関係は他にもありますが、あまりにも多くのコード全体を投稿することはできません。メソッドが呼び出されたファイルからインポートできませんか?

4

1 に答える 1