Tôi đang cố gắng tạo một thành phần (giao diện người dùng) sử dụng nhiều bảng. Tôi tìm thấy 1 hoặc 2 bài trả lời một phần cho câu hỏi nhưng không ai thực sự làm. Điểm có vẻ luôn đơn giản và hiển nhiên đối với người biết làm thế nào để làm điều đó nhưng nó không bao giờ thực sự được giải thích (hoặc tôi đã bỏ lỡ bài đúng).Ghi vào nhiều bảng trong thành phần joomla?
Trong thành phần của tôi, người dùng nhập dữ liệu trong một quan điểm cho rằng cần phải được lưu trữ trong hai bảng: tiêu chuẩn Joomla bảng danh nghĩa # __users một bảng bổ sung để lưu trữ dữ liệu không được bao gồm trong Joomla tứC# __users_complements
Tôi là người mới bắt đầu, vì vậy có lẽ tôi sai, nhưng tôi hiểu rằng các chức năng chuẩn của Joomla chỉ có thể lưu kết quả của một biểu mẫu trong một bảng. Trong trường hợp của tôi, tôi đoán rằng tôi phải ghi đè các hàm chuẩn trong mô hình của mình: com_component/model/my_model.php.
1) Tôi bối rối vì tôi không thực sự hiểu chức năng nào phải được ghi đè: save()? cửa hàng()? khác?
2) Giả sử tôi ghi đè hàm save(), tôi nên viết lại tất cả mã để lưu dữ liệu (phát nổ mảng dữ liệu và tạo tất cả truy vấn cập nhật) hoặc tôi nên tạo 2 đối tượng bảng chuẩn.
Trong trường hợp này, (2 đối tượng) có vẻ lạ khi gửi mỗi lần toàn bộ mảng dữ liệu đến hàm mẹ như tôi biết rằng một phần dành cho bảng 1 và phần kia cho bảng 2. Tôi sẽ có thể chia tay trước khi tôi không?
3) Tôi có nên tạo 2 mô hình và quản lý các mô hình đó từ bộ điều khiển của mình khi tôi lấy lại dữ liệu từ biểu mẫu và gọi chức năng lưu của mô hình không?
Bạn có thể giúp tôi làm rõ cách thực hiện việc lưu này trong nhiều bảng không? Một ví dụ với mã sẽ được đánh giá rất nhiều. Cảm ơn bạn
Đẹp. Điều này có lợi ích của việc kiểm tra xem bạn có thể liên kết với cả hai bảng trước khi lưu bất kỳ thứ gì không. –
Trong Joomla 3 JTable lưu phương thức sử dụng bind ($ data) bên trong, vì vậy không cần phải kết buộc dữ liệu trước khi sử dụng phương thức save. – 3ehrang