1

モデルのすべてのインスタンスを取得するときに、2 つの列の値を 1 つに連結したいと考えています。ただし、この関数をどこに配置すればよいかわかりません。

モデルに配置すると、特定のインスタンスでのみ呼び出すことができ、すべてのインスタンスに関連するため、正しくありません。

または、データを取得するためのより良い方法はありますか? フォーム選択ボックスで使用されます。

...
<cfquery name="products" datasource="#########">
    SELECT (brand + ' ' + name) AS [product], id
    FROM products
</cfquery>
...

この場合、複数の製品のように複数のインスタンス。

4

1 に答える 1

0

デイブのように、私はあなたの「インスタンス」への言及を理解していませんが、一般的に使用される値に連結された 2 つのフィールドが必要な場合、CF ORM で行うことは次のとおりです。この関数を定義 CFC 自体に追加します。

/**
* products
* @output false
* @persistent true
*/
component
{
    property name="id" fieldtype="id";
    property name="name";
    property name="brand";

    // concatenate fields to make Product 
    public string function getProduct() {
        return variables.brand & " " & variables.name;
    }
}

次に、エンティティを取得した後、使用する 2 つのフィールドに対して getID() と getProduct() を呼び出します。

于 2011-07-15T17:21:40.810 に答える