Django で WWW インターフェイスを使用して C++ でアプリケーションを開発しています。これまでのところ、Linux で共有オブジェクトにコンパイルされた Boost.Python ラッパーを使用して、C++ でフレームワークを動作させています。
今、このフレームワークを Django で実行しようとしています。フォーム「CharField」から文字列を渡すと、次のエラーが発生します。
Python argument types in
CoreSystem.setOutput(CoreSystem, unicode)
did not match C++ signature:
setOutput(CoreSystem {lvalue}, std::string)
それを担当するコードは次のとおりです。
form = AnalyzeForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
s.setOutput(cd["output"])
ここで、s はこの CoreSystem オブジェクトです。次のように入力すると:
s.setOutput("DatabaseOutput")
それは正常に動作します。str(cd["output"]) も使用しましたが、その後は何も起こりません。
私はDjango 1.4.1とPython 2.7.3を使用しています