私はPlay2テンプレートを持っています:
files: Option[List[(String, reactivemongo.api.gridfs.ReadFile[reactivemongo.bson.BSONValue])]]
ファイルをドロップダウン形式の選択で表示したいのですが、ファイルが存在する場合のみです!
どうすればいいですか?
私はPlay2テンプレートを持っています:
files: Option[List[(String, reactivemongo.api.gridfs.ReadFile[reactivemongo.bson.BSONValue])]]
ファイルをドロップダウン形式の選択で表示したいのですが、ファイルが存在する場合のみです!
どうすればいいですか?
Julien Lafontが言ったように、テンプレートに渡す前に、このリストを変換することを検討する必要があります。たとえば、読み取ったファイルのリスト(を呼び出すことができます)が必要な場合は、次のようにfilename
します。id
val fileList = files.toList.flatten.map(_._2) // fileList is a List[ReadFile[BSONValue]]]
また、ファイル名とそのIDを取得したいだけの場合(IDがBSONObjectID
sの場合)、次のように記述できます。
val fileList = files.toList.flatten.map { file =>
val id = file._2.id match {
case oid: BSONObjectID => oid.stringify
case id => id.toString
}
id -> file._2.filename
}
// fileList is a List[(String, String)] where the first element of the tuple is a string version of the id and the second is the name of the file.