Những bước nào có thể được thực hiện để kế thừa và ghi đè một số phần của sách dạy nấu ăn Chef?


9

Với hơn 3200 cuốn sách dạy nấu ăn có sẵn trong siêu thị Chef, thường đã có một cuốn sách dạy nấu ăn đáp ứng nhu cầu tôi cần giải quyết.

Hầu như mỗi khi có một số thay đổi cần thiết cho một mẫu, hoặc một biến hoặc một tài nguyên trong một cuốn sách nấu ăn hiện có.

Các bước để ghi đè và / hoặc cải thiện sách dạy nấu ăn hiện có là gì? Không cần lấy mã của họ và giữ lại khả năng nhận các bản cập nhật phiên bản trong tương lai.


1
Hầu hết các sách dạy nấu ăn có một số thuộc tính nhất định có thể được đặt đơn giản trong khi xây dựng một cuốn sách nấu ăn. Bạn thường không phải "ghi đè" bất cứ điều gì để thực hiện các chỉnh sửa dự kiến.
gà con

Câu trả lời:


13

Có rất nhiều chi tiết cụ thể nhưng mẫu tổng thể chúng tôi sử dụng là "bọc và mở rộng". Ý tưởng chung là tạo ra một cuốn sách nấu ăn phụ thuộc vào sách dạy nấu ăn cộng đồng, thường được đặt tên mycompany_originalthing, sau đó thực hiện các công thức nấu ăn theo cách gọi include_recipe 'originalthing::whatever'nhưng với nhiều thứ được thêm vào trước / sau hoặc với các cuộc gọi đến những thứ như edit_resourcethay đổi tài nguyên. Tránh edit_resourcekhi có thể vì nó dẫn đến mã giòn, nhưng nó ở đó nếu bạn cần. Bạn cũng có thể sử dụng sách hướng dẫn trình bao bọc để đặt thuộc tính, lớp con hoặc bọc tài nguyên tùy chỉnh, v.v.

Đối với trường hợp cụ thể của "Tôi cần điều chỉnh một mẫu trong công thức cộng đồng", nó sẽ trông như thế này:

include_recipe 'original::whatever'

edit_resource!(:template, '/path/to/something') do
  source 'mytemplate.erb'
  cookbook 'mycompany_original'
end

Bạn có thể tìm thêm chi tiết về edit_resourcevà bạn bè tại https://coderanger.net/rewind/

Với sách dạy nấu ăn dựa trên tài nguyên tùy chỉnh thay vì công thức nấu ăn, mọi thứ có thể trở nên phức tạp hơn nhưng các chi tiết cụ thể phụ thuộc rất nhiều vào cách chính xác cuốn sách nấu ăn mà bạn đang mở rộng được viết.


Đây là mô hình mà chúng tôi tuân theo và nó thường hoạt động cho đến khi điều chỉnh sách dạy nấu ăn cộng đồng trở nên quá khó khăn và việc viết lại từ đầu sẽ dễ dàng hơn.
Travis Thompson

Tuyệt quá! Thậm chí còn không biết họ đã thay đổi thứ tua lại lỗi cũ thành thứ gì đó là một phần của Chef.
Evgeny

Xin lỗi, nhưng tên người dùng của bạn cũng được bao gồm trong liên kết bạn đã đề cập ... Điều này khiến tôi tự hỏi liệu bạn có bất kỳ liên kết nào với liên kết đó không. Nếu vậy, bạn có quen thuộc với các chính sách SE về việc đưa ra một "tiết lộ" thích hợp về điều đó không (cũng được bao gồm trong câu trả lời của bạn)?
Pierre.Vriens

1
@ Pierre.Vriens trong bối cảnh của thế giới Đầu bếp, blog của tôi gần tương đương với các tài liệu chính thức. Kiểm tra lịch sử của tôi trên SO nếu bạn muốn xác nhận :)
coderanger

(trong trường hợp này tôi không liên kết đến các tài liệu chính thức vì chúng có lỗi cú pháp cho API này)
coderanger
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.