次のコードでは、int() 引数は「Liquor」ではなく、文字列または数値である必要がありますというエラーが表示されますが、値を
storeID = Store.objects.get(StoreID=store_id)
storeliquor = StoreLiquor.objects.get(SPI=SPI_param)
liquor_param = storeliquor.liquorID
liquor = Liquor.objects.get(id=liquor_param)
次のコードでは、int() 引数は「Liquor」ではなく、文字列または数値である必要がありますというエラーが表示されますが、値を
storeID = Store.objects.get(StoreID=store_id)
storeliquor = StoreLiquor.objects.get(SPI=SPI_param)
liquor_param = storeliquor.liquorID
liquor = Liquor.objects.get(id=liquor_param)
対象のようliquor_param
ですLiquor
。
最後の行を次のように置き換えます。
liquor = Liquor.objects.get(id=liquor_param)
と:
liquor = Liquor.objects.get(id=liquor_param.pk) # or liquor_param.id
実際、liquor = Liquor.objects.get(id=liquor_param)
は冗長であり、あなたの場合は必要ありません。
liquor_param
または、取得したいオブジェクトである場合、DB から再度取得することは効率的ではありませんstoreliquor.liquorID
。Liquor