namshi/google-doc-configuration-bundle 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

namshi/google-doc-configuration-bundle

Composer 安装命令:

composer require namshi/google-doc-configuration-bundle

包简介

Configure the dependency injection container of your Symfony2 applications with a Google Doc. Crazy, ahm?

README 文档

README

Configure your Symfony2 container from a Google Doc. Sounds crazy but it's even worse.

This bundle will let you use a Google Doc to store key-value pairs and re-use them within your Symfony2 app: this means that any human capable with interacting with a spreadsheet can play around and configure your app.

The values are "public", in the sense that you will need to share the Google Doc ("Publish to the web") so anyone with the link can access it, even though guessing the URL of the doc isn't trivial.

In any case, you should use this tecnique to store things like

  • cache TTL
  • products per page
  • banner URLs

and so on and so fort. Do not store passwords or sensitive data there.

Installation

You can easily install this library through composer:

"namshi/google-doc-configuration-bundle": "dev-master"

Configuration

Simply define the config service, here we are using Redis and gvalue to store config values from Google Docs to Redis and read the cached values from a redis hash for performances:

parameters:
  namshi_google_doc_configuration.config.google_doc_key: 123456

services:
  config:
    class: Namshi\GoogleDocConfigurationBundle\Config\RedisConfig
    arguments: [@namshi_google_doc_configuration.predis, 'namshi.config', true]

The Google Doc key can be found from the URL of your Google Doc, which is something like https://docs.google.com/a/namshi.com/spreadsheet/ccc?key=123456&usp=drive_web#gid=0, where 123456 is the key of the document.

To check the format of the doc have a look at the example one.

Then secure the 2 routes that the bundle exposes, in the security.yml:

utility:
  pattern:    (^/namshi/update-config)|(^/namshi/config)
  http_basic:
    provider: ...

You can then check http://domain.example/namshi/config to check your configuration and http://domain.example/namshi/update-config to update it from the Google Doc.

Storing the config in different ways

We use Redis but you are free to implement the ConfigInterface and have fun with it.

Transforming values

If you need to process / transform values out of the Google Do, ie. transforming "false" to false you can simply define a namshi_google_doc_configuration.transformer service and let it implement the TransformerInterface.

This is probably not so clean but you can live with it, for now :)

Tests

b****-please

统计信息

  • 总下载量: 9.03k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 32
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2014-09-21

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固