7

Tôi luôn tạo hoàn toàn mã NSFetchRequests trong mã. Bây giờ tôi đang xem GUI Xcode để xây dựng một yêu cầu tìm nạp và lưu trữ nó trong mô hình.Thay thế biến với FetchRequests được lưu trữ trong Mô hình CoreData

Tôi đang theo dõi một ví dụ từ Tài liệu Xcode. Tôi đã thêm một Fetch Yêu cầu mô hình của tôi, và vị đã được tạo ra thông qua GUI Modeling là:

firstName LIKE[c] "*SUBSTRING*" 

sau đó tôi lấy rằng yêu cầu với hai dòng sau:

NSDictionary *substituionDictionary = [NSDictionary dictionaryWithObject:@"woody" forKey:@"SUBSTRING"]; 

NSFetchRequest *fetchRequest = [mom fetchRequestFromTemplateWithName:@"firstNameContains" substitutionVariables:substituionDictionary]; 

Một NSLog của kết quả là kết quả đầu ra của NSFetchRequest:

(entity: Customer; predicate: (firstName LIKE[c] "*SUBSTRING*"); sortDescriptors: (null); limit: 0) 

.. cho biết biến không được thay thế trước khi trả về FetchRequest được lưu trữ.

Vì vậy, làm thế nào để xác định rằng văn bản đã nhập trong Yêu cầu tìm nạp mô hình dữ liệu Xcode Giao diện người xây dựng dự phòng được dự định sẽ được thay thế khi chạy bằng NSFetchRequest: fetchRequestFromTemplateWithName: replaceVariables:?

Cảm ơn bạn!

Woody

Trả lời

5

Bạn cần nhấp chuột phải vào hàng của lấy theo yêu cầu vị biên tập có chứa các biến dự định và chọn "BIẾN" từ popup. Trong trường hợp bạn nhấp chuột phải đôi khi là cầu kỳ trong trình chỉnh sửa Xcode, vì vậy tôi có xu hướng nhấp vào bên trái của các nút +/-.

+0

Genius. Đó chính xác là giải pháp. (Tôi chưa bao giờ trải nghiệm bất cứ điều gì không trực quan trong một ứng dụng của Apple như là cửa sổ bật lên bị ẩn.) Tôi không biết làm thế nào tôi có thể gặp được điều đó mà tôi đã không hỏi và bạn đã trả lời. Cảm ơn!! – Woodster

+1

Tôi đồng ý. Vui lòng gửi yêu cầu nâng cao cho giao diện người dùng và một lỗi chống lại tài liệu (vì không cho bạn biết nơi cần tìm) tại http://bugreport.apple.com! –

Các vấn đề liên quan