Chỉ hiển thị nội dung liên quan đến danh mục của nó trong Laravel 8
Rinvex Categories là một gói Laravel đa hình, để quản lý danh mục. Bạn có thể phân loại bất kỳ mô hình hùng hồn nào một cách dễ dàng và sử dụng sức mạnh của Bộ lồng nhau cũng như sự tuyệt vời của các mô hình Có thể chuyển đổi và Có thể dịch được ngay lập tức Show Cài đặt
Cách sử dụngĐể thêm hỗ trợ danh mục cho các mô hình hùng hồn của bạn, chỉ cần sử dụng đặc điểm // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);4 Quản lý danh mục của bạnDanh mục của bạn chỉ là mô hình hùng biện bình thường, vì vậy bạn có thể đối phó với nó như vậy. Không có gì đặc biệt ở đây
Quản lý mô hình có thể phân loại của bạnAPI trực quan và rất đơn giản, vì vậy hãy xem nhanh // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories(); Bạn có thể đính kèm danh mục theo nhiều cách khác nhau // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);
Và như bạn có thể mong đợi, bạn có thể kiểm tra xem các danh mục được đính kèm php artisan rinvex:publish:categories1
Sử dụng nâng caoTạo sên danh mụcRinvex Categories tự động tạo sên và tự động phát hiện và chèn bản dịch mặc định cho bạn nếu không được cung cấp, nhưng bạn vẫn có thể chuyển nó một cách rõ ràng thông qua phương thức php artisan rinvex:migrate:categories20 hùng hồn thông thường, như sau php artisan rinvex:migrate:categories2
Phát hiện tham số thông minhCác phương thức của Rinvex Categories chấp nhận danh sách các danh mục đủ thông minh để xử lý hầu hết các loại đầu vào như bạn đã thấy trong các ví dụ trên. Nó sẽ kiểm tra loại đầu vào và hành xử phù hợp Truy xuất tất cả các mô hình được đính kèm với danh mụcBạn có thể gặp trường hợp cần đính kèm tất cả các mô hình vào danh mục nhất định, bạn có thể thực hiện dễ dàng như sau php artisan rinvex:migrate:categories4 phạm vi truy vấnCó, Danh mục Rinvex được cung cấp với một vài phạm vi truy vấn tuyệt vời để thuận tiện cho bạn, ví dụ sử dụng php artisan rinvex:migrate:categories5
Bản dịch chuyên mụcQuản lý các bản dịch danh mục một cách dễ dàng như sau // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);1
Quản lý các nút/bộ lồng nhau của bạnChèn danh mụcDi chuyển và chèn danh mục bao gồm một số truy vấn cơ sở dữ liệu, vì vậy giao dịch sẽ tự động bắt đầu khi danh mục được lưu. Sẽ an toàn khi sử dụng giao dịch toàn cầu nếu bạn làm việc với một số mô hình Một lưu ý quan trọng khác là các thao tác cấu trúc được hoãn lại cho đến khi bạn nhấn vào php artisan rinvex:migrate:categories26 trên mô hình (một số phương thức gọi ngầm php artisan rinvex:migrate:categories26 và trả về kết quả boolean của thao tác) Nếu mô hình được lưu thành công, điều đó không có nghĩa là danh mục đó đã được di chuyển. Nếu ứng dụng của bạn phụ thuộc vào việc danh mục có thực sự thay đổi vị trí của nó hay không, hãy sử dụng phương pháp php artisan rinvex:migrate:categories28 php artisan rinvex:publish:categories0 Tạo danh mụcKhi bạn chỉ cần tạo một danh mục, nó sẽ được thêm vào cuối cây php artisan rinvex:publish:categories1 Trong trường hợp này, danh mục được coi là gốc có nghĩa là nó không có cha Tạo gốc từ danh mục hiện cóDanh mục sẽ được thêm vào cuối cây php artisan rinvex:publish:categories2 Nối thêm và phụ thuộc vào cha mẹ được chỉ địnhNếu bạn muốn đặt danh mục con của danh mục khác, bạn có thể đặt nó là con cuối cùng hoặc con đầu tiên. Giả sử rằng php artisan rinvex:migrate:categories29 là một số danh mục hiện có, có một số cách để thêm danh mục php artisan rinvex:publish:categories3 Và chỉ có một vài cách để trả trước php artisan rinvex:publish:categories4 Chèn trước hoặc sau danh mục đã chỉ địnhBạn có thể biến php artisan rinvex:migrate:categories40 thành hàng xóm của danh mục php artisan rinvex:migrate:categories41. Giả sử rằng php artisan rinvex:migrate:categories41 là một số danh mục hiện có, trong khi danh mục mục tiêu có thể mới. Nếu danh mục mục tiêu tồn tại, nó sẽ được chuyển đến vị trí mới và cha mẹ sẽ được thay đổi nếu cần php artisan rinvex:publish:categories5 Xây dựng một cây từ mảngKhi sử dụng phương thức tĩnh php artisan rinvex:migrate:categories20 trên danh mục, nó sẽ kiểm tra xem các thuộc tính có chứa khóa php artisan rinvex:migrate:categories44 hay không. Nếu đúng như vậy, nó sẽ tạo ra nhiều danh mục hơn theo cách đệ quy, như sau php artisan rinvex:publish:categories6 php artisan rinvex:migrate:categories45 hiện chứa danh sách các danh mục con đã tạo Xây dựng lại một cây từ mảngBạn có thể dễ dàng xây dựng lại một cái cây. Điều này rất hữu ích cho việc thay đổi hàng loạt cấu trúc của cây. Với php artisan rinvex:migrate:categories46 dưới dạng một mảng các danh mục, bạn có thể xây dựng cây như sau php artisan rinvex:publish:categories7 Có một id được chỉ định cho danh mục có tiêu đề là php artisan rinvex:migrate:categories47, điều đó có nghĩa là danh mục hiện có sẽ được điền và lưu. Nếu danh mục không tồn tại, php artisan rinvex:migrate:categories48 sẽ bị ném. Ngoài ra, danh mục này đã chỉ định php artisan rinvex:migrate:categories44 cũng là một mảng các danh mục; Danh mục php artisan rinvex:migrate:categories51 không có khóa chính được chỉ định, vì vậy nó sẽ được coi là khóa mới và được tạo php artisan rinvex:migrate:categories52 hiển thị có nên xóa danh mục đã tồn tại nhưng không có trong php artisan rinvex:migrate:categories46. Theo mặc định, danh mục không bị xóa Truy xuất danh mụcTrong một số trường hợp, chúng tôi sẽ sử dụng biến php artisan rinvex:migrate:categories54 là id của danh mục mục tiêu Tổ tiênTổ tiên làm chuỗi cha mẹ đến phạm trù. Hữu ích để hiển thị breadcrumbs cho danh mục hiện tại php artisan rinvex:publish:categories8 Hậu duệHậu duệ là tất cả các danh mục trong một cây con, tôi. e. trẻ em của thể loại, trẻ em của trẻ em, vv php artisan rinvex:publish:categories9 Con cháu có thể háo hức nạp php artisan rinvex:migrate:categories0 Anh chị em ruộtAnh chị em là những thể loại có cùng cha mẹ php artisan rinvex:migrate:categories1 Để chỉ nhận anh chị em tiếp theo php artisan rinvex:migrate:categories2 Để có được anh chị em trước đây php artisan rinvex:migrate:categories3 Lấy các mô hình liên quan từ bảng khácHãy tưởng tượng rằng mỗi danh mục php artisan rinvex:migrate:categories55 sản phẩm. Tôi. e. Mối quan hệ php artisan rinvex:migrate:categories56 được thiết lập. Làm cách nào bạn có thể nhận được tất cả các sản phẩm của php artisan rinvex:migrate:categories40 và mọi hậu duệ của nó? php artisan rinvex:migrate:categories4 Bây giờ hãy tưởng tượng rằng mỗi danh mục có 255 bài đăng. Tôi. e. php artisan rinvex:migrate:categories59 mối quan hệ được thiết lập lần này. Làm cách nào bạn có thể nhận được tất cả các bài đăng của php artisan rinvex:migrate:categories40 và mọi hậu duệ của nó? . Chắc chắn rồi php artisan rinvex:migrate:categories5 Bao gồm độ sâu danh mụcNếu bạn cần biết danh mục đang ở cấp độ nào php artisan rinvex:migrate:categories6 Danh mục gốc sẽ ở cấp 0. Con của các danh mục gốc sẽ có cấp độ 1, v.v. Để nhận các danh mục ở cấp độ được chỉ định, bạn có thể áp dụng ràng buộc // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);11 php artisan rinvex:migrate:categories7 Thứ tự mặc địnhMỗi danh mục có giá trị // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);12 duy nhất của riêng nó xác định vị trí của nó trong cây. Nếu bạn muốn danh mục được sắp xếp theo giá trị này, bạn có thể sử dụng phương thức // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);13 trên trình tạo truy vấn php artisan rinvex:migrate:categories8 Bạn có thể nhận các danh mục theo thứ tự đảo ngược php artisan rinvex:migrate:categories9 Chuyển thể loạiĐể thay đổi danh mục lên hoặc xuống bên trong cha mẹ để ảnh hưởng đến thứ tự mặc định // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();0 Kết quả của phép toán là giá trị boolean cho biết danh mục có thay đổi vị trí hay không Hạn chếCác ràng buộc khác nhau có thể được áp dụng cho trình tạo truy vấn
Ràng buộc hậu duệ // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();1 Ràng buộc tổ tiên // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();2 php artisan rinvex:migrate:categories40 có thể là khóa chính của mô hình hoặc thể hiện của mô hình xây dựng một cái câySau khi nhận được một tập hợp các danh mục, bạn có thể chuyển đổi nó thành cây. Ví dụ // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();3 Điều này sẽ lấp đầy các mối quan hệ // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);15 và php artisan rinvex:migrate:categories44 trên mọi danh mục trong tập hợp và bạn có thể hiển thị cây bằng thuật toán đệ quy // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();4 Điều này sẽ xuất ra một cái gì đó như thế này // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();5 Xây dựng cây phẳngNgoài ra, bạn có thể xây dựng một cây phẳng. một danh sách các danh mục trong đó các danh mục con nằm ngay sau danh mục mẹ. Điều này hữu ích khi bạn nhận các danh mục có thứ tự tùy chỉnh (tôi. e. theo thứ tự bảng chữ cái) và không muốn sử dụng đệ quy để lặp lại các danh mục của bạn // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();6 Nhận một cây conĐôi khi bạn không cần tải toàn bộ cây mà chỉ cần tải một số cây con của danh mục cụ thể // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();7 Bây giờ // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);17 chứa con của loại // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);18 Nếu bạn không cần danh mục // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);18, thay vào đó hãy làm theo // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();8 Đang xóa danh mụcĐể xóa một danh mục // Get all categories $allCategories = app('rinvex.categories.category')->first(); // Get instance of your model $post = new \App\Models\Post::find(); // Get attached categories collection $post->categories; // Get attached categories query builder $post->categories();9 QUAN TRỌNG. Bất kỳ hậu duệ nào thuộc danh mục đó cũng sẽ bị xóa QUAN TRỌNG. Các danh mục được yêu cầu xóa dưới dạng mô hình, đừng thử xóa chúng bằng truy vấn như vậy // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);0 Điều đó sẽ phá vỡ cây phương pháp trợ giúp// Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);1 Kiểm tra tính nhất quánBạn có thể kiểm tra xem một cái cây có bị gãy không (i. e. có một số lỗi cấu trúc) // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);2 Thống kê lỗi cây sẽ trả về một mảng với các khóa sau
sửa chữa câyCây danh mục hiện có thể được sửa nếu bị hỏng. Sử dụng thông tin kế thừa từ cột php artisan rinvex:publish:categories07, các giá trị // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);12 và php artisan rinvex:publish:categories14 phù hợp được đặt cho mọi danh mục // Single category id $post->attachCategories(1); // Multiple category IDs array $post->attachCategories([1, 2, 5]); // Multiple category IDs collection $post->attachCategories(collect([1, 2, 5])); // Single category model instance $categoryInstance = app('rinvex.categories.category')->first(); $post->attachCategories($categoryInstance); // Single category slug $post->attachCategories('test-category'); // Multiple category slugs array $post->attachCategories(['first-category', 'second-category']); // Multiple category slugs collection $post->attachCategories(collect(['first-category', 'second-category'])); // Multiple category model instances $categoryInstances = app('rinvex.categories.category')->whereIn('id', [1, 2, 5])->get(); $post->attachCategories($categoryInstances);3
Nhật ký thay đổiTham khảo Changelog để biết toàn bộ lịch sử của dự án Hỗ trợCác kênh hỗ trợ sau có sẵn trong tầm tay của bạn
Đóng góp & Giao thứcCảm ơn bạn đã xem xét đóng góp cho dự án này. Hướng dẫn đóng góp có thể được tìm thấy trong ĐÓNG GÓP. md Báo cáo lỗi, yêu cầu tính năng và yêu cầu kéo rất được hoan nghênh Lỗ hổng bảo mậtChúng tôi muốn đảm bảo rằng gói này an toàn cho mọi người. Nếu bạn đã phát hiện ra một lỗ hổng bảo mật trong gói này, chúng tôi đánh giá cao sự giúp đỡ của bạn trong việc tiết lộ nó cho chúng tôi một cách có trách nhiệm Tiết lộ công khai một lỗ hổng có thể khiến toàn bộ cộng đồng gặp rủi ro. Nếu bạn phát hiện ra mối lo ngại về bảo mật, vui lòng gửi email cho chúng tôi theo địa chỉ help@rinvex. com. Chúng tôi sẽ làm việc với bạn để đảm bảo rằng chúng tôi hiểu phạm vi của vấn đề và chúng tôi giải quyết đầy đủ mối lo ngại của bạn. Chúng tôi xem xét thư từ được gửi tới help@rinvex. com ưu tiên cao nhất của chúng tôi và làm việc để giải quyết mọi vấn đề phát sinh nhanh nhất có thể Sau khi lỗ hổng bảo mật được khắc phục, bản phát hành hotfix bảo mật sẽ được triển khai sớm nhất có thể Giới thiệu về RinvexRinvex là startup giải pháp phần mềm, chuyên về giải pháp doanh nghiệp tích hợp cho doanh nghiệp vừa và nhỏ được thành lập tại Alexandria, Ai Cập từ tháng 6/2016. Chúng tôi tin rằng động lực của chúng tôi là Giá trị, Phạm vi tiếp cận và Tác động là điều khiến chúng tôi khác biệt và giải phóng những khả năng vô tận trong triết lý của chúng tôi thông qua sức mạnh của phần mềm. Chúng tôi muốn gọi nó là Đổi mới với tốc độ của cuộc sống. Đó là cách chúng tôi chia sẻ sự tiến bộ của nhân loại |