小编gre*_*ert的帖子

如何开发和包含Composer包?

我正在寻找用PHP开发一个包,但我不希望它立即在GitHub或某个地方提供.在我的包含一个Packagist文件很容易composer.json,但如何在我的文件中添加一个本地包composer.json?另外,我应该在/vendor/foo/bar(相对于根composer.json)构建包,还是应该把它放在其他地方?

编辑:我想我的问题是关于其他人如何写他们的包.是否每个新包都添加到Packagist中,然后当您想要测试更改时,您提交GitHub(或任何地方),然后通过Composer将其拉回来?这看起来效率很低.

php composer-php

53
推荐指数
7
解决办法
2万
查看次数

如何创建与Elastic Beanstalk匹配的Vagrantfile?

我们正在组建一个我们计划部署到Elastic Beanstalk的PHP站点,并且我想创建一个虚拟化的开发环境来匹配生产.不过,我有几个问题.

因此看起来我可以使用vagrant-aws并将其提供给自定义AMI - 可能是由Beanstalk创建的AMI.这会真的有效吗?好像它使用rsync来复制任何新文件.当我等待它同步时,这是否会减慢开发速度?

更重要的是,如果您想进行任何开发,似乎这依赖于网络连接.是否可以将其脱机以便我可以在没有连接的情况下进行开发(例如在飞机上,在公共汽车上等)?

作为替代方案,有没有人组装一个与Elastic Beanstalk的包和设置相匹配的Vagrant文​​件?我在搜索中找不到任何东西,但也许我在找错了地方?

最后,是否有任何关于推出这种开发测试的建议?我是以正确的方式思考这个问题,还是有更好的方法来做到这一点?

php amazon-web-services vagrant amazon-elastic-beanstalk

10
推荐指数
1
解决办法
1982
查看次数

在OSX中安装Docker卷时权限被拒绝

我很有智慧,所以希望你们能帮助我.在带有docker-machine的OSX 10.11.2中,我有一个docker-compose文件,它应该构建一个本地Dockerfile并为它附加一个MySQL容器.MySQL容器应该挂载我存储数据库数据的本地文件夹,因此如果容器或VM关闭,我可以重新启动它而不会丢失数据.问题是,当我运行它时,它会抛出一个权限错误:

db_1  | 2015-12-23 19:17:59 7facaa89b740  InnoDB: Operating system error number 13 in a file operation.
db_1  | InnoDB: The error means mysqld does not have the access rights to
db_1  | InnoDB: the directory.
Run Code Online (Sandbox Code Playgroud)

我已经尝试过每一种我能想到的排列方式来实现这个目标.我正在阅读它,它可能与docker-machine如何处理OSX权限有关,但是docker-machine的文档说它安装了/Users文件夹,所以这应该不是问题.

这是docker-compose.yml:

web:
  build: .
  ports:
    - "3000:3000"
  links:
    - db
db:
  image: mysql:5.6
  ports:
    - "3306:3306"
  volumes:
    - /Users/me/Development/mysql-data:/var/lib/mysql
  environment:
    MYSQL_ROOT_PASSWORD: mypass
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我不禁想到这是非常简单的事情.非常感激任何的帮助!

编辑:

  • 主持人 - drwxr-xr-x 7 me staff 238 Dec 23 12:10 mysql-data/
  • VM - drwxr-xr-x 1 …

mysql docker docker-compose docker-machine

8
推荐指数
1
解决办法
9028
查看次数

使用Flask-Assets在Flask中使用特定于蓝图的资产?

我对Flask很新,因为它的价值.我正在使用蓝图来分解我的代码,并尝试使用Flask-Assets来提供资产链接.但是出于某种原因,我无法让Flask-Assets在蓝图中工作.

代码结构:

/modules
    /base
        __init__.py
    __init__.py
/static
    # ... stuff
/templates
    /layout.html
Run Code Online (Sandbox Code Playgroud)

在/modules/base/__init__.py中:

from flask import Blueprint, render_template, request
from flask.ext.sqlalchemy import SQLAlchemy
from flask.ext.assets import Environment, Bundle
from flask import current_app as app

default = Blueprint('base', __name__)

assets = Environment(app)

css = Bundle('css/bootstrap.min.css')
assets.register('css_all', css)

js = Bundle('js/jquery-1.7.2.min.js', 'js/bootstrap.min.js')
assets.register('js_all', js)

@default.route('/')
def index():

    return render_template('index/index.html')
Run Code Online (Sandbox Code Playgroud)

基础布局中有这个:

{% assets "css_all" %}
    <link rel="stylesheet" href="{{ ASSET_URL }}" />
{% endassets %}
{% assets "js_all" %}
    <script type="text/javascript" src="{{ ASSET_URL }}"></script> …
Run Code Online (Sandbox Code Playgroud)

python flask

7
推荐指数
1
解决办法
3951
查看次数

使用Laravel 4表单设置默认值并使用错误输入?

我正在使用Laravel 4及其内置的表单组件.我正在尝试设置它,以便我可以给出默认值的表单集,但如果用户提交并且验证程序失败,它将使用前一个输入的值.但是,下面的代码总是失败.由于某种原因,会话值'threw_error'始终为true,即使表单引发错误也是如此.

似乎一切都是通过会话完成的,这就是为什么我要设置__old_input,这是表单使用的内部键.我究竟做错了什么?我应该像这样使用__old_input,还是有更好的方法来实现这个目标?

我正在使用资源丰富的控制器,因此下面的index()是GET /,而store()是POST /.

class Admin_DetailsController extends Admin_BaseController
{
    public function index()
    {           
        $details = Detail::all();

        // this is always true for some reason?
        if(!Session::get('threw_error', false))
        {
            Session::put('__old_input', $details);          
        }

        $data['message'] = Session::get('message');

        $this->layout->nest('content', 'admin.details.index', $data);
    }

    public function store()
    {
        $validator = $this->makeValidator();
        if($validator->fails())
        {
            return Redirect::to('/admin/details')->withErrors($validator)->withInput()->with('threw_error', 1);
        }

        // process normally
    }
}

// in view
{{ Form::text('some_field') }}
Run Code Online (Sandbox Code Playgroud)

编辑:此代码或多或少按预期工作,但Session :: flashInput($ details)优于手动调用__old_input.我尝试删除表单中的一些字段以查看它是否存在,这实际上有效.换句话说,我认为这是我本地版本的PHP或某些配置或其他问题 - 而不是Laravel问题.

laravel laravel-4

2
推荐指数
1
解决办法
4682
查看次数