2013-09-03 71 views
7

Tôi đang sử dụng Laravel 4 và đã tải hybridauth thông qua nhà soạn nhạc và nhận nó hoạt động tốt với Facebook và Twitter. Bây giờ tôi đang cố gắng để làm cho nó làm việc với hơi nước, được liệt kê như là một nhà cung cấp bổ sung, tuy nhiên tôi tiếp tục nhận được lỗi sau:Laravel 4, Composer và hybridauth - Cách tải các nhà cung cấp bổ sung

require_once(vendor/hybridauth/hybridauth/hybridauth/Hybrid/Providers/Steam.php) [function.require-once]: failed to open stream: No such file or directory

Rõ ràng nó đang tìm kiếm tại địa điểm sai, lớp thực tế cư trú tại địa điểm này :

vendor/hybridauth/hybridauth/additional-providers/hybridauth-steam/Providers/Steam.php

có rất ít tài liệu mà tôi có thể tìm thấy trên này, đoán duy nhất của tôi là tác giả của hybridauth chỉ được cung cấp các nhà cung cấp bổ sung tính năng bổ sung tùy chọn và hy vọng bạn di chuyển vị trí của lớp để các vị trí thích hợp Tuy nhiên, với nhà soạn nhạc, đây không phải là cách để làm mọi thứ và sẽ gây ra vấn đề bất cứ lúc nào tôi chạy bản cập nhật soạn nhạc.

Tôi không thể tìm thấy bất kỳ ai gặp sự cố tương tự qua Google, điều này có vẻ lạ nên tôi lo lắng rằng tôi đang thiếu rõ ràng. Có cách nào để sử dụng các nhà cung cấp bổ sung, để họ tự động tải, trong khi sử dụng hybridauth với Composer?

Giải pháp duy nhất tôi có thể làm là tự bao gồm tệp chính xác trước khi cố gắng tự động tải. Tôi không nhớ làm điều đó, nhưng tôi giả sử phải có một cách thích hợp để làm điều này nếu không sử dụng Composer với Hybridauth là khá vô ích.

+0

rõ ràng đã xảy ra sự cố với thư viện. – Michelle

Trả lời

-1

Tôi cũng đã tìm kiếm và tìm kiếm điều này. Tất cả những gì tôi có thể nghĩ là nó được tạo ra để sử dụng mà không có khung công tác, sau đó được chuyển sang sử dụng với Composer, tuy nhiên thư mục "các nhà cung cấp bổ sung" chưa được tải hoặc một thứ gì đó. Nó kinda sucks.

Tôi vừa sao chép tệp vào thư mục khác và mọi thứ hiện hoạt động.

này có thể có ích cho bạn ...

http://blog.elliothesp.co.uk/coding/laravel-4-and-hybrid-auth/

Phần về vấn đề này:

Copy the Steam.php file, located at: 
laravel/vendor/hybridauth/hybridauth/additional-providers/hybridauth-steam/Providers/Steam.php 

Over to: 

laravel/vendor/hybridauth/hybridauth/hybridauth/Hybrid/Providers/ 

Tôi không biết lý do tại sao các thư viện đã cho họ tách ra, không thực hiện bất kỳ ý nghĩa với tôi.

+0

Chúc mừng, điều này có gây ra sự cố với bản cập nhật trình soạn nhạc không? – robjbrain

+0

Không, tôi không gặp bất kỳ vấn đề gì. Mặc dù tôi đoán nếu tập tin Steam.php đã được cập nhật, nó sẽ không được cập nhật trong dự án của bạn, bạn sẽ phải làm như vậy một lần nữa. Tôi đã cố gắng liên hệ với nhà phát triển, nhưng không bao giờ nhận được bất cứ điều gì trở lại. – Alias

4

Tôi có vấn đề này với Instagram và đã có thể sử dụng cú pháp wrapper, được ghi nhận ở đây http://hybridauth.sourceforge.net/userguide/tuts/specific-provider-wrapper.html

Đoạn code dưới đây có adapter Instagram làm việc cho tôi.

  "Instagram" => array ( 
       "enabled" => true, 
       "keys" => array ( 
        "id" => xxxx, 
        "secret" => xxxx, 
       ), 
       "wrapper" => array(
        'class'=>'Hybrid_Providers_Instagram', 
        'path' => $_SERVER['DOCUMENT_ROOT'].'/../vendor/hybridauth/hybridauth/additional-providers/hybridauth-instagram/Providers/Instagram.php' 
       ) 
      ), 

Nếu bạn đọc nguồn tại hybridauth/Hybrid/Provider_Adapter.php dòng 69, bạn sẽ thấy nó kiểm tra điều này trước khi thực hiện yêu cầu với đường dẫn chuẩn.