Tại sao chức năng so sánh được liên kết với id khách truy cập (log)?


16

Điều đầu tiên tôi làm khi bắt đầu một dự án là hỏi khách hàng xem anh ta có cần nhật ký người dùng trong trang web của mình không. Trong thuật ngữ kỹ thuật Mage_Logmô-đun. Trong tất cả các trường hợp cho đến nay tôi đã có câu trả lời:

Không. Chúng tôi sẽ sử dụng Google Analytics.

Và câu hỏi tiếp theo là "Bạn có muốn so sánh sản phẩm không?". Tôi hỏi những câu hỏi này bởi vì các bảng nhật ký có xu hướng trở nên quá giờ và trang web bị chậm. Vì vậy, tôi muốn tránh sửa chữa các vấn đề tốc độ.

Câu hỏi thứ hai tôi hỏi là vì phần sản phẩm so sánh phụ thuộc vào nhật ký cho khách hàng. Xem phần này trong addActionbộ điều khiển so sánh sản phẩm:

 if ($productId
        && (Mage::getSingleton('log/visitor')->getId() || Mage::getSingleton('customer/session')->isLoggedIn())
    )

Vì vậy, nếu khách hàng muốn so sánh các sản phẩm, tôi không thể vô hiệu hóa việc đăng nhập.
Ý tôi là tôi có thể tìm kiếm một tiện ích mở rộng hoặc xây dựng một tiện ích mở rộng, nhưng câu hỏi thực sự là: Tại sao chức năng so sánh được liên kết với id khách truy cập? Bất kỳ kết quả tốt của điều này?. Các trích dẫn của khách hoạt động độc đáo bằng cách tham khảo id của trích dẫn trong phiên. Tại sao không giống nhau để so sánh sản phẩm?


Có lẽ bởi vì không ai sẽ vô hiệu hóa bất kỳ phần nào của Magento, bao giờ dự án sử dụng mọi phần đúng;)
David Manners

Miễn là ai đó thực hiện khả năng vô hiệu hóa mô-đun lõi, tôi không nghĩ đây là lý do ... nhưng tôi có thể nói đùa :).
Marius

Đồng ý, mặc dù tôi đã thấy các phần khác không chơi tốt sau khi tắt một số tiện ích mở rộng. Nói tóm lại, đó là lý do tại sao tôi không thực sự hiểu lý do tại sao mọi người yêu thích nhà soạn nhạc và Magento gây ra cho tôi cảm giác kỳ lạ vì bạn không thể phân chia các mô-đun cốt lõi một cách đáng tin cậy.
Phong tục David

@DavidManners. Hy vọng điều này sẽ có thể ở một mức độ nào đó trên 2.0.
Marius

Vì vậy, trở lại câu hỏi điều gì sẽ xảy ra nếu bạn tắt mô-đun nhưng sau đó thiết lập mô-đun của riêng bạn với cấu hình cho log/visitorhoạt động với thông tin phiên? Không bao giờ thử bản thân mình
David Manners

Câu trả lời:


7

Vì thế, tôi sẽ nói rằng câu hỏi này hơi khó trả lời - lý do mà nó sử dụng các bảng nhật ký là vì nó. Tôi thực sự không nghĩ rằng có nhiều lý do khác ngoài việc nói rằng Mage_Log đã có mặt từ 0,6B và những nỗ lực ban đầu có thể đã gắn kết chức năng ban đầu với nó; sau một thời gian, những hạn chế có thể được đưa ra ánh sáng và họ đã ngừng phát triển ý tưởng đó.

Điều này thực sự chỉ có thể được trả lời đầy đủ bởi một người như Boris nhưng tôi khá tự tin rằng câu trả lời cho "tại sao bạn lại làm theo cách đó" sẽ là "bởi vì chúng tôi đã làm theo cách đó".


1
Câu trả lời "bởi vì chúng tôi đã làm theo cách đó" tốt hơn câu trả lời "bởi vì nếu bạn". Tôi đoán bạn đúng, điều này là không thể trả lời. Tôi đã hy vọng cho một câu trả lời nhà phát triển cốt lõi. Tôi sẽ chấp nhận câu trả lời này chủ yếu vì ai đó nhận ra điều này là sai và quyết định thay đổi nó trong Magento2. github.com/magento/magento2/issues/536
Marius

Bạn nói đúng. Thiếu kinh nghiệm ban đầu với các hậu quả mô đun hóa trong các giai đoạn phát triển ban đầu, và quan trọng hơn là thiếu thời gian để xem lại và viết lại mã hiện có đã "hoạt động"
Unirgy
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.