Xcode 4, Phiên bản mô hình dữ liệu cốt lõi - Đặt phiên bản hiện tại


183

Tôi bối rối về cách thực hiện chức năng sau trong Xcode 4 để đặt mô hình sử dụng sau khi tạo mô hình được phiên bản.

Thiết kế> Mô hình dữ liệu> Đặt phiên bản hiện tại


15
Tôi ước tôi có thể bỏ phiếu này mỗi lần tôi phải tham khảo lại.
erik

Câu trả lời:


329
  1. Nhấp vào tệp .xcdatamodelId cấp cao nhất (tệp có nhiều phiên bản .xcdatamodel bên dưới là trẻ em).
  2. Đảm bảo sidepane tiện ích hiển thị (nếu không nhấp vào nút "Xem" thứ ba ở trên cùng bên phải của cửa sổ).
  3. Trong sidepane tiện ích, chọn Trình kiểm tra tệp (biểu tượng giấy nhỏ ở trên cùng bên trái)
  4. Bạn sẽ thấy "Mô hình dữ liệu lõi được phiên bản" là một nhóm vì vậy chỉ cần thay đổi trình đơn thả xuống "Hiện tại" thành phiên bản mới của bạn.

2
Thật sự cảm ơn! Cũng tìm thấy cùng một khung trong Xem> Tiện ích> Trình kiểm tra tệp
Nate Potter

vẫn quen với những thay đổi giữa Xcode 3 và 4, cảm ơn!
Chris


15

Trong Xcode 4, nếu bạn chỉ thấy một phiên bản của mô hình dữ liệu của mình trong phần "Mô hình dữ liệu lõi được phiên bản - Hiện tại" của trình kiểm tra tệp khi bạn chọn tệp * .xcdatamodeld; hoặc bạn có phiên bản thứ 2 của tệp * .xcdatamodel hiển thị bên ngoài gói xcdatamodeld trong trình điều hướng dự án của Xcode, đọc bên dưới.

Để khắc phục điều này:

1) Xóa cả hai tham chiếu * .xcdatamodeld và * .xcdatamodel khỏi Xcode bằng cách nhấp chuột phải vào chúng trong trình điều hướng dự án và nhấn "Xóa".

2) Khi được nhắc bởi Xcode, nhấp Chỉ xóa tham chiếu (rất quan trọng).

3) Khởi động lại Xcode để có biện pháp tốt trong trường hợp có bất kỳ bộ nhớ đệm nào đang diễn ra.

4) Thêm lại tệp * .xcdatamodeld chứa cả hai tệp * .xcdatamodel.

Bây giờ Xcode sẽ nhận ra các mối quan hệ và cho phép bạn mở rộng tệp * .xcdatamodeld trong trình điều hướng dự án để hiển thị cả hai tệp * .xcdatamodel trong gói xcdatamodeld gốc, cũng hiển thị dấu kiểm màu xanh lục bên cạnh mô hình hiện tại. Điều này cũng sẽ cho phép bạn chọn phiên bản hiện tại của mô hình dữ liệu trong trình kiểm tra tệp thay vì chỉ hiển thị một phiên bản.


Và do đó, kết thúc gãi đầu.
Steve Madsen

Tôi đã vô tình thay đổi xcdatamodelid gốc thành gói ứng dụng và giải pháp này đã giúp!
morph85

4

Đối với Xcode 4.2

  1. Nhấp vào YourModel.xcdatamodeld

  2. Hiển thị khung bên

  3. Trong "mô hình dữ liệu lõi được phiên bản", chọn "hộp thả xuống hiện tại", chọn mô hình dữ liệu của bạn.

Bây giờ dấu tick màu xanh lá cây được chuyển đến mô hình dữ liệu hiện tại của bạn.


Không có gì giống như "mô hình dữ liệu lõi được phiên bản" trong "Thư viện đối tượng". Câu trả lời đầu tiên (từ Mac_Cain13) là chính xác, mặc dù tôi dường như có một lỗi kỳ lạ với mô hình của tôi nằm ngoài .modeld trong Xcode.
StuFF mc

@StuFFmc - Kiểm tra bài đăng của tôi dưới đây để khắc phục sự cố của tệp xcdatamodel nằm ngoài gói xcdatamodeld trong trình điều hướng dự án của Xcode.
Andrew

2

Tìm kiếm trong Trợ giúp của Xcode cho "Phiên bản hiện tại" mang lại công thức "Đặt phiên bản hiện tại của mô hình đối tượng được quản lý" mô tả cách thực hiện điều này ...


1

Hơi lạc đề một chút, nhưng nếu bạn đã đạt được câu hỏi này để biết cách tạo phiên bản mới đầu tiên của mô hình của bạn (như tôi đã làm): nhấp vào tệp xcdatamodel >> Menu "Trình chỉnh sửa" >> Thêm phiên bản Mô hình

Điều này sẽ bắt đầu phiên bản của mô hình.



-1

Bạn cũng có thể sử dụng phương thức setter từ CoraData ...
Chỉ cần làm một cái gì đó như thế này ...

Trong CustomCoreDataManager.m của bạn :

#import "ObjectiveRecord.h"

và gọi phương thức init như thế này

- (instancetype)init {

    self = [super init];

    if (self) {           
        [[CoreDataManager sharedManager] setModelName:@"YourModelName"];
    }

    return self;
}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.