2013-07-29 23 views
22

Có lẽ đó không phải là một câu hỏi thực sự, thay vì là một cuộc thảo luận . Tôi quyết định học góc cạnh, sử dụng một công việc đơn giản, xây dựng một hệ thống blog. Và tôi có một vài câu hỏi. Kẻo tưởng tượng rằng các ứng dụng php sẽ có cấu trúc MVC, vì vậy tôi có một số câu hỏi sau:AngularJS và PHP backend

  • tôi có nên xây dựng của tôi back-end chỉ ứng dụng như yên tĩnh, và sử dụng json đáp ứng \ yêu cầu theo góc và php?
  • Điều gì về chế độ xem trong ứng dụng php, tôi nên sử dụng chúng bằng ng-init?
  • Định tuyến, phía máy chủ hoặc phía máy khách?
  • Điều gì về bộ nhớ đệm?
  • Và cuối cùng, nhưng không kém phần quan trọng nhất, nơi tôi nên đặt logic về dữ liệu mà người dùng sẽ nhập?

Ai đó có thể cung cấp cho tôi hướng dẫn hoặc chỉ dẫn, về những điều này và liên kết hữu ích để đọc các bài viết, kết hợp php và góc cạnh hoặc có thể tôi đang làm sai?

+0

btw xem xét rằng một ứng dụng web một trang dựa trên js không phải là seo thân thiện mà về cơ bản một blog có thể là. –

Trả lời

29

Bạn có thể muốn xem xét loại ứng dụng này thực sự là HAI ứng dụng.

Đầu tiên là phụ trợ, API. Bạn có thể sử dụng khung công tác PHP của bạn để xây dựng một API cho phép bạn có dữ liệu bền vững, xác thực (logic nghiệp vụ), v.v ... và quên đi giao diện người dùng, bạn chỉ xây dựng một API cho dữ liệu phụ trợ.

Phần thứ hai của ứng dụng là lối vào AngularJS. Điều này bao gồm tất cả các chế độ xem và mọi thứ mà khách hàng nhìn thấy. Không ai trong số đó đến từ chương trình phụ trợ.

Điều này cho phép bạn sử dụng API phụ trợ (bit PHP) để hoạt động như kho lưu trữ dữ liệu, với xác thực riêng của nó để đảm bảo an toàn, đồng thời có trải nghiệm người dùng liền mạch và xác thực phía máy khách cơ bản từ AngularJS.

Định tuyến là AngularJS, vì đó là lối vào thực tế mà máy khách đang sử dụng.

Có thể thực hiện bộ đệm (nếu cần) trong chương trình phụ trợ, API của bạn.

Xác thực sẽ xảy ra ở cả giao diện người dùng và chương trình phụ trợ, mặc dù chúng có thể khác đôi chút nếu cần.

Hãy nhớ rằng, bạn xây dựng backend đúng như một API, mà không cần cân nhắc cho giao diện người dùng (như thể sẽ có nhiều hơn một ứng dụng sử dụng nó), vì vậy nó sẽ có các quy tắc và logic xác thực của riêng nó.

Hy vọng điều đó sẽ hữu ích.

+0

Vì vậy, bạn có lời khuyên để sử dụng php chỉ như api? Và tại sao một ý tưởng tồi của nó kết hợp các khung nhìn php với góc cạnh? – Cawa

+1

@ СашаХарьков - Vâng, tôi không chắc chắn nếu tôi muốn nói đó là một ý tưởng tồi cho mỗi se, nhưng khái niệm nó có thể giới thiệu nhiều rắc rối hơn và các vấn đề bảo trì hơn nó ban đầu sẽ giải quyết. Ý tưởng là AngularJS sẽ cung cấp cho bạn toàn bộ giao diện người dùng, nó là một ứng dụng ở bên phải của chính nó. API phụ trợ (trong trường hợp này là PHP) có sẵn để giúp duy trì dữ liệu với các hoạt động CRUD. Tách chúng giúp giữ mã duy trì và mở rộng được. –

+1

bất kỳ khuôn khổ PHP cụ thể nào được đề xuất để xây dựng API phụ trợ này? – domi

6

Tôi đã tìm thấy một cấu trúc rất đơn giản cho phép tôi sử dụng Angular với PHP và api an toàn. Tôi sử dụng Angularjs cho tất cả các quan điểm. Tôi sử dụng một khung PHP API an toàn được gọi là mỏng để tạo thuận lợi cho việc liên lạc giữa các mô hình Angular và PHP mà tôi sử dụng Doctorine2 cho.

85% mã của tôi được thực hiện với Góc (Số lần xem). 5% được thực hiện với API (bộ điều khiển) và 10% còn lại cấu hình logic nghiệp vụ trong Mô hình. Tuyệt vời tách mối quan tâm và không có nhiều chi phí. Đơn giản và súc tích.