Swift 3に書き込まれていないSwift 2.2 iOSアプリケーションを移行しようとしています。モデルを取得して配列に戻すために、 。これらはすべてSwift 2.xで動作しましたが、Swift 3では以下のエラーが発生しています。関連する関数定義も含まれています。タイプ を返すためにタイプ のリターン 表現を変換できません 'LazyFilterBidirectionalCollection>' '[EntryModel]''LazyFilterBidirectionalCollection>型のリターン式を変換できません。
func validateSubmission(_ submissionId: Int) -> ([EntryModel]) {
let realm = try! Realm()
let submissionModel = realm.objects(SubmissionModel.self).filter({ $0.id == submissionId }).first!
let entryModels = submissionModel.entryModels
// Check for all entry details field which are mandatory and are empty and not hidden
let emptyEntryModels = entryModels.filter({ $0.entryDetailArray.filter({ $0.entryDetailValue.isEmpty && $0.isMandatory && !($0.isHidden) }).count > 0 })
return emptyEntryModels
}
私はよく分からない:
/SubmissionDataManager.swift:184:16実際の問題とは何か、それをどうやって修正するのか、ということです。任意の提案が高く評価されました。
あなたの依存関係を管理するために何を使用していますか?私はあなたがこのようなカップルの質問をしていることに気づいた。 CocoaPods – Pierce
を使用して 'return Array(emptyEntryModels)'を試している場合、あなたのポッドファイルがSwift 3用に更新されていることを確認してください。それでも動作しない場合は、 'EntryModel 'として' return Array(emptyEntryModels) 'を試してください。 – vacawama
@vacawama、 'return Array(emptyEntryModels)'が機能しました!あなたが望むなら、これを答えとして加えてください。 – Lastmboy