Web应用程序与Drupal集成 [英] Web application integration with Drupal

查看:128
本文介绍了Web应用程序与Drupal集成的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们希望构建一个特定于我们的域的Web应用程序,还包括在这个应用程序中的论坛,博客等。还需要一些与Twitter和Facebook的整合。
还有一个桌面应用程序连接到我们的Web应用程序,用于上传数据和下载配置和报告。问题是,我们可以扩展Drupal来托管常规模块和我们的Web应用程序吗?



(将有桌面应用程序上传的业务实体及其属性和日常数据)
还是可以将Drupal与外部应用程序集成?作为一个例子,用户和角色需要在两者中相同和一致。我们也可能希望从Drupal中搜索Web应用程序的数据。



我知道这有点模糊,但我不能透露更多。我非常新颖的内容管理,我只想知道有人是否已经建立了这种应用程序。

解决方案

我尝试改写你所写的内容,只是为了检查你是否正确地提出了你的问题。您基本上需要创建一个Web应用程序:


  1. 实现Drupal的一些标准功能

  2. 有一些自定义功能应该融入Drupal(相同的用户,相同的权限等)。

  3. 能够从桌面上载/下载内容(或数据)应用程序。

如果我对你说得对,简短的答案是:是的,你可以用Drupal来实现



现在广泛的一个:
- Drupal已经有数千个模块,所以我希望你通过简单的安装来获得大多数你想要的东西正确组合可用的模块。
- 当然,任何自定义功能都可以轻松地以模块的形式实现(这些天非常标准的)。
- 与桌面应用程序的交互通常通过 webservices 实现,而不是直接查询数据库。 Drupal本身带有一个xmlrpc服务器和客户端,但是您可以通过几个contrib模块扩展到SOAP。



还有一些想法: p>


  • 如果您选择使用Drupal,并从头开始,那么您必须意识到您,您的团队将需要花费一些时间和努力了解Drupal如何工作。尽管与Palantir不同 - 我坚持使用Drupal,但我同意/他的看法,就是Drupal从蝙蝠那里获得了复杂的复合体。这是您必须支付的权衡,以便有一个平台 - 放心 - 非常灵活,极其可插拔和坚如磐石的(否则不会被用于重新设计< a href =http://www.whitehouse.gov/ =noreferrer>白宫,也不是Drupal连续第二年获得最佳PHP CMS奖,我想)

  • 好消息是:有一些优秀的书籍,我一定会推荐Pro Drupal开发,深入和全面地说明系统。一定要获得第二版,因为第一个处理现在已经过时的5个地方。这就是说...

  • 至少在我看来,Drupal的一个很好的事情是,你可能需要对现有功能做的大部分调整可以通过挂接来自定制模块的原始代码也是。这个海事组织是Drupal最大的优势:你永远不必触及其他开发者的代码来实现你的目标,例如,这意味着你可以保持你的核心和contrib模块是最新的,而不会破坏任何您可能已经完成了自定义。

  • Drupal很重。与其他CMS相比,它从您的服务器中吸收了大量的处理能力和RAM,而且 - 除非您有一个非常小的网站 - 我建议将其与nginx配合使用,而不是Apache。

  • 由于缓存和调节机制的良好机制,Drupal很好地扩展。奇怪的是,Drupal在大型流量网站上的表现非常好,流量大幅增长并不意味着资源使用量大幅增长。

  • 用户体验超出了Drupal站点上的-box非常差。目前正在进行大量工作(此处这里(视频)),但在D7发布之前,改进将不可用[很快,但随后你会必须等待模块被移植],所以建议您分配一些时间来创建管理主题,如果您的网站的管理员不是技术类型。



在一天结束时,我的建议是:如果你的网站要去大/复杂/复杂的业务逻辑和很多功能,那么Drupal是可能是一个很好的候选人。如果您的网站相反是具有标准功能的小规模加上几个定制位,也许Wordpress / Joomla可以更好地满足您的需求[不是因为功能不那么强大,而是因为Drupal的优势在这种情况下将不被使用,而Wordpress / Joomla更简单的架构可能代表了这种情况下的优势]



其他选项肯定会像CakePHP或Django这样的框架,但是 - IMO - 完全是不同的做法,我会说。


We want to build a web application, that is specific to our domain, but also include forums, blogs etc in this application. Some integration points to Twitter and Facebook are also required. There will also be a desktop application that connects to our web application for uploading data and downloading configuration and reports.

The question is, can we extend Drupal to host both the regular modules and our web application? (There will be business entities and their properties and daily data uploaded from the desktop application) Or can Drupal be integrated with external applications? As an example, users and roles need to be same and consistent across both. We may also want data from the web application searchable in Drupal.

I know this is a bit vague, but I cannot reveal more. I am very new to content management and I just wanted to know if someone has built this kind of application.

解决方案

I try to rephrase what you wrote, just for you to check that I got your question right. You basically need to create a web application that:

  1. Implements some of the standard functionality of Drupal
  2. Have some custom functionality that should "blend into" the Drupal one (same users, same permissions, etc...)
  3. Be able to upload/download content (or data) from desktop applications.

If I got you right, the short answer is: yes, you can do that with Drupal.

Now for the extensive one: - Drupal has literally thousands of modules, so I expect you to get most of the things you want by simply installing the right combination of readily available modules. - Of course, any custom functionality can easily be implemented in form of a module too (quite standard thing these days). - The interaction with a desktop application is normally implemented via webservices rather than querying the DB directly. Drupal comes natively with a xmlrpc server and client, but you can scale up to SOAP - if you wish - via a couple of contrib modules.

Some additional thoughts:

  • If you choose to use Drupal, and you start from scratch, then you have to be aware you and your team will need to dedicate some time and effort to understand how Drupal works. Although - differently than Palantir - I stuck with Drupal, I agree with her/him on the fact that Drupal gets complicated complex right off the bat. This is the trade-off you have to pay in order to have a platform that - rest assured - is very flexible, extremely pluggable and rock-solid (otherwise it wouldn't have been used to redesign the whitehouse, nor Drupal would have got for the second year in a row the "best PHP CMS" award, I suppose).
  • The good news is: there are some excellent books out there, and I would certainly recommend "Pro Drupal Development" for an in-depth and all-around explanation of the system. Just be sure to get the 2nd edition, as the first deals with the now obsolete 5 seres. That said...
  • A very good thing about Drupal, at least in my opinion, is that most of the tweaks you might need to do to an existing functionality can be implemented by hooking into the original code from a custom module too. This IMO is the biggest advantage of Drupal: you never have to touch other developers' code to achieve your goals, and this means - for example - that you will be able to keep your core and contrib modules up-to-date without breaking any customisation you might have done.
  • Drupal is heavy. Compared to other CMS it sucks plenty of processing power and RAM from your server, and - unless you are going to have a very small site - I recommend to deploy it in conjunction with nginx, rather than Apache.
  • Drupal scales well, thanks to a good mechanism of caching and "throttling up" mechanisms. Strange as it might sound, Drupal scales very well on large traffic websites, so that big increases in traffic do not necessarily imply big increases in resource usage.
  • The user experience out-of-the-box on a Drupal site is quite poor. There is a massive work being done on this at the moment (here and here (video)), but improvements won't be available until D7 is released [soon, but then you will have to wait for the modules to be ported], so it is advisable to allocate some time to create an administrative theme, if the admins of your website won't be of the technical type.

At the end of the day, my advice is: if your site is going to go big / complex / with complicated business logic and lots of functionality, then Drupal is probably a good candidate. If your site is contrarily a small-scale one with standard functionality plus a few custom bits, maybe Wordpress / Joomla could fit your needs better [not because they are 'less powerful' but because Drupal strengths would be unused in this case, while Wordpress/Joomla simpler architecture would probably represent an advantage in this scenario]

Other options would certainly be frameworks like CakePHP or Django, for example, but that - IMO - is a totally different approach to the matter, I would say.

这篇关于Web应用程序与Drupal集成的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆