2016-07-06 6 views
0

私はイメージの場所の行を持つデータベースを持っています。私はスクリプトを実行すると生成されるイメージの場所のリストも持っています。私は生成されたリストとデータベースを同期させておきたい。私はテーブルを落とすだけですが、このテーブルには投票情報があります。私は、画像を削除した場合、私はエントリをがあるようにしたくないが、私は、画像を追加する場合、私は他のすべての画像のための投票を保つことができるようにしたいPython/django - データベースの行とリストを比較する

例:

[db] 
Name | Path    | vote_count 
image1 | path/to/image1.jpg | 1 
image2 | path/to/image2.jpg | 4 
image3 | path/to/image3.jpg | 2 

[list] 
path/to/image1.jpg 
path/to/image2.jpg 
path/to/image3.jpg 
path/to/image4.jpg 

私は、データベースにリストを比較したいと私はデシベルを見たい追加の画像がある場合、次の操作を行います

[db] 
Name | Path    | vote_count 
image1 | path/to/image1.jpg | 1 
image2 | path/to/image2.jpg | 4 
image3 | path/to/image3.jpg | 2 
image4 | path/to/image4.jpg | 0 

これを実現するための良い方法は何ですか?私は今のところこれを持って

def ScanImages(request): 
    files = [] 
    fileRoots = [] 
    for root, directories, filenames in os.walk('/web/static/web/images/'): 
     for filename in filenames: 
      files.append(os.path.join(root,filename)) 
      fileRoots.append(root) 

答えて

1

あなたはジャンゴモデルVotableImageを持っていると仮定すると、あなたはfilesリストに存在するか、それぞれの値をチェックしdb_path_list = VotableImage.objects.values_list('Path', flat=True)を呼び出すことによって、それのフィールドのいずれかのリストを取得することができます(あなたが作成していることスクリプトによる)

関連する問題