0

以前の投稿では、私の問題について十分に明確ではありませんでした:

私は2つのクラスを持っています:

public class Categorie {

    // Attributs
    private int identifiant;
    private String libelle;

   ...
}

public class Restaurant {

    // Attributs
    private int identifiant;
    private String nom;
    private String description;
    private List<Categorie> lesCategories;

    ...
}

そしてSQLiteで:

CREATE TABLE Categorie
( categorie_id  INTEGER PRIMARY KEY
, libelle       TEXT    NOT NULL
);

CREATE TABLE Restaurant
( restaurant_id INTEGER PRIMARY KEY
, nom           TEXT    NOT NULL
, description   TEXT
);

CREATE TABLE RestaurantCategorie
( restaurant_id INTEGER NOT NULL    REFERENCES Restaurant
, categorie_id  INTEGER NOT NULL    REFERENCES Categorie
, PRIMARY KEY (restaurant_id, categorie_id)
);

しかし、カーソルを作成するには、どうすればよいかわかりません...

public Restaurant ConvertCursorToObject(Cursor c) { 

Restaurant restaurant= new Restaurant ( 
    c.getInt(EnseigneOpenHelper.NUM_RES_ID), 
    c.getString(EnseigneOpenHelper.NUM_RES_NOM),
    c.getString(EnseigneOpenHelper.NUM_RES_DESCRIPtion), 
    ????
); 
return restaurant; 
}

/** * Convert a cursor in Restaurant */

public Restaurant ConvertCursorToOneObject(Cursor c) { 
    c.moveToFirst(); 
    Restaurant restaurant = ConvertCursorToObject(c); 
    c.close(); 
    return restaurant ; 
}

この問題はここにある = "????" 私のコンストラクタは、リスト カテゴリ タイプのオブジェクトを必要としています。

4

1 に答える 1

1

最初のクエリで取得したレストラン ID を使用して、カテゴリに対して別のクエリを実行します。次に、新しいカーソルの結果からカテゴリのリストを作成します。

于 2013-02-07T17:31:39.710 に答える