与codeigniter相比,laravel中的应用程序开发

时间:2015-12-01 04:14:49

标签: php codeigniter laravel web-applications laravel-5

我是laravel开发的新手,并且混淆了如何以及从哪里开始。我一直在开发codeigniter,并开发了相当庞大的网络应用程序。从laravel制作todo应用程序或单页网站开始是好的但是如何构建一个非常好的Web应用程序?我该如何开始开发?

与codeigniter一样,我开始编写Web应用程序所需的所有核心库,所有API外部调用都驻留在我的库中,并在应用程序的models文件夹中创建了一组模型。有一个帮助文件夹,它允许我创建一组辅助函数,我需要在开发之前。来到laravel我很困惑如何开始。没有库文件夹来创建库或辅助函数。主要是控制器,模型文件保留在外部而不是安排在文件夹中。可能是我在软件开发方面缺乏经验提出了这个问题。有人可以帮我开始laravel开发吗?

  1. 所有外部api调用都在哪里?
  2. 它是在控制器中还是有可能构建库的方式?
  3. 是否在laravel中将基本控制器称为库?
  4. 我可以在哪里构建应用程序逻辑?它在控制器内吗?
  5. Laravel doc说控制器只是路由http请求并进行验证。我是否必须将所有业务逻辑放在模型文件中?

1 个答案:

答案 0 :(得分:1)

首先两个框架之间的比较完全不同,特别是Laravel和Codeigniter,两者在框架核心上都有很多差异。

Laravel& Phalcon有更多能够比较,可以处理你的问题。与Codeigniter相比,您可以使用Laravel建立更复杂的Web应用程序。

Laravel中的所有东西都是开箱即用的意思是随意把东西放在任何你只需要放置正确命名空间的地方。

在这里,我将解释我正在为复杂的项目做些什么。我们正在与Laravel处理购物车应用程序。

1)我们正在使用Laravel的Package Development概念。

2)我们构建了一个核心软件包来管理每个基本的东西,如CRUD,电子邮件,Cron,菜单等(这也可以在多个项目中使用) 核心软件包的结构如下所示,基于MVC。

Core

   -- Console (some artisan commands of Laravel)

   -- Controllers (handling methods and invoke models )
   -- Modles (Your model files)

   -- Data (some data handling functions means helper functions for your frameworks)

   -- Forms (All the form fields)

   -- Libraries (Put your libraries here)

   -- Tables (Deal with your tables, not DB table structure read laravel doc)
   -- Database

        -- Migrations (your table structure)

        -- Seeds (your tables default values)

使用这种方式,您可以自由编写您自己的文件夹结构中的代码,您可以查看Laravel的包回购,

注意:您可能无法理解我在这里解释的大部分条款bcoz,但是开始使用官方文档非常简单,它会清除您的每一个疑问。

希望它有意义......