問題タブ [python-elixir]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Elixir session.commit() を使用して db に書き込むときに計算フィールドをそのままにしておく方法
Elixir を使用して MSSQL データベースに接続しています。データベースには、計算列を含むテーブルがあります。ただし、オブジェクト内の他の列を更新して変更をコミットすると、計算列に挿入できないことが python から通知されます。
私はオートロードを使用しているので、私のモデルでは:
スロットを作成し、いくつかの値を指定してからコミットします。
重要な注意点!!EndDateTime は計算フィールドであるため、ss オブジェクトには値を与えません。事実上、そのフィールドのデータベースには何も返していません。
エラー:
sqlalchemy.exc.ProgrammingError: (ProgrammingError) ('42000', '[42000] [FreeTDS][SQL Server]列 "EndDateTime" は、計算列であるか、UNION 演算子の結果であるため、変更できません。( 271) (SQLPrepare)') 'INSERT INTO sch.[tbScheduleSlots] ([Program_ID], [SlotType_ID], [StartDateTime], [EndDateTime], [Duration], [Description], [Notes], [State], [MasterSlot_ID] ]) OUTPUT が挿入されました。 、なし、なし、なし、2、なし)
python - Elixir でコード/ルックアップ テーブルを作成するにはどうすればよいですか?
ルックアップ テーブルを作成したり、Python の Elixir から作成されたリレーショナル データベースでコードを使用したりするための最良の方法を探しています。ここでの私の用語が正しいかどうかさえわかりません。
たとえば、Region 列を持つ Location テーブルがあります。Region 列の値には、「北アメリカ」、「中米」、「南アメリカ」、「アジア/太平洋諸島」、およびその他の値のみが含まれるようにします。値のリストは将来変更される可能性があります。
Elixirでこれを行うにはどうすればよいですか? 値が長いテキスト文字列であるため、列挙型を使用するのは悪い考えのように思えます。ある種のコードの方が優れているようです (1 = 北アメリカ、2 = 南アメリカなど)。これらのコードをデータベースに保存して参照するにはどうすればよいですか?
python - Python elixir オブジェクト アイテムを参照する方法
request.param
Elixir オブジェクト属性のキー名を a からスワップしようとしています。以下では、 Elixir オブジェクトbk
はBook()
属性を持つ ですPrintTitle
。 PrintTitle
としてフォームからも取得されrequest.param
ます。すべてのパラメーターを Book 属性に手動でマップするのではなく、単純な に基づいてマップしたいと思いますif in
。ただし、 の構文またはメソッドが間違っているため、機能しませんbk.k
。
python - SQLAlchemy/Elixir - 多対多の関係リストでエンティティのメンバーシップを確認するためのクエリ
MIT の助教授であるすべての教授の名前のリストを取得するために、sqlalchemy クエリを作成しようとしています。特定のコースに関連付けられた複数の助教が存在する可能性があることに注意してください。
私がやろうとしていることは、次のものとほぼ同等です。
in_
エンティティ全体ではなく、エンティティのフィールドに対してのみ定義されているため、これは機能しませんProfessor.id.in_
。Course.assistants は教授のリストであり、ID のリストではありません。私も試しcontains
ましたが、うまくいきませんでした。
私のエリクサーモデルは次のとおりです。
中間の多対多エンティティにアクセスできれば、これは些細なことです (条件は になりますがand_(interm_table.prof_id = Professor.id, interm_table.course = Course.id)
、SQLAlchemy は明らかにこのテーブルを私から隠します。
Elixir 0.7 と SQLAlchemy 0.6 を使用しています。
ところで: この質問はSqlalchemy+elixir: How query with a ManyToMany relationship? とは異なります。つまり、単一の静的なコースではなく、条件を満たすすべてのコースに対して教授をチェックする必要があります。
python - エリクサーでインデックスを作成するには? sqlalchemy または何を使用して?
私はエリクサーを使用していますが、インデックスの作成方法が見つかりません。
私はsqlalchemyに精通していませんが、例はありますか?
python - sqlalchemy.sql.functions.char_lengthをフィルター条件として使用する
Elixirとsqla0.6を使用していて、モデルにクエリを実行しようとしています。
...指定された長さの番号を持つドキュメントの場合。
私はこのようなことを考えていました:
...しかし、どうやら、char_lengthはsqlalchemy.sql.functionsに存在しますが、ここでは機能していません。直接クエリに頼らずに、宣言型イディオム内で機能させるにはどうすればよいですか?
python - Elixirでモデルをどのように保存しますか
Djangoモデルを使用して作成されたデータベースがあり、SQLAlchemyとElixirを使用してアクセスしています。クエリは機能し、データベースからアイテムを完全にうまく引き出すことができますが、アイテムを編集して保存しようとすると、次の例外がスローされます。
私は何が間違っているのですか?データベースに保存できないというセットアップの重要な部分を見逃したことがありますか、それとも私のバージョンのelixirとSQLAlchemyに問題がありますか?
すでに実行setup_all()
していて、metadata.bind
すべて設定されているので、データベースにクエリを実行できます。
python - それ自体と多対多の関係を持つElixirクラスを作成する方法
これを考えるのに苦労していますが、基本的には、多くのアセットを持つことができるAssetsというElixirクラスを作成したいと思います。したがって、次のようになります(ただし、これは明らかに機能しません)。
ですから、私は資産の「フラットな」システムを持ちたいと思っていますが、それが可能であるか、あるいは最善であるかはわかりません。
これを行う方法はありますか?
python - スレッド内でElixir/SQLAlchemyのsession.bindがNoneに設定されるのはなぜですか?
参照している問題を示すために、いくつかの簡略化されたテストコードから始めます。
t_model.py
t_main.py
t_main.pyの出力:
スレッドの新しいセッションをインスタンス化するためにElixir/SQLAlcによって行われている内部作業がいくつかあることを認識しています(私は推測します)。それが、この質問に対するAntsAasmaの回答が扱っていることだと思います。しかし、なぜそのように設定されたフィールドを引き継がないのでしょうか。そのようなものが確実に引き継がれるようにする方法はありますか?
特定の生のSQLクエリを実行できるように、セッションにバインドされたエンジンが必要ですが、スレッドをインスタンス化するとすぐに値を忘れてしまいます。
皆さんが提供できる洞察は、進行中のレッグワークをよりよく理解するのに役立ち、新しいスレッドを初期化してエンジンを設定するたびにt_model.session.bindを設定する必要をなくす方法を教えてください。
python - Elixir/SqlAlchemy 内でクラス属性とクラス プロパティを作成する方法
私はクラスを持っています:
次のようにクエリを実行したいと思います。
ただし、結果の SQL クエリは次のようになります。
User.name フィールドの代わりに' false ' があることに注意してください。
次のエラーが表示されます。
SQLクエリを次のようにしたいと思います:
編集:必要な/2番目のSQLクエリは、私が本当に望んでいたものに対して正しくありませんでした.「first_name」、「middle_name」、「last_name」の連結に対応するデータベース内に「名前」フィールドを作成するためのある種の受動的な方法.
Edit2:次の方法でほぼそこに到達できると思います。しかし、私はまだ適切な表現に苦労しています。
Edit3:私が必要としているものにはうまくいくようです。だから私は答えとしてそれを含めています。