小编rmo*_*bis的帖子

Laravel,Faker - 增加生成的日期时间

我在 Seeder 中使用 Faker 包为训练事件生成假数据。

每个事件都有starts_atends_at字段。我想在生成的ends_at字段DateTime之后填充字段starts_at,最好是 1 到 8 小时,甚至固定的 1 小时差异也可以。

php datetime increment faker laravel

4
推荐指数
2
解决办法
7823
查看次数

如何创建模式表数据类型longtext?

我需要一些帮助.例:

$table->text('description');
Run Code Online (Sandbox Code Playgroud)

但是,如果我想要我的数据类型是'LONGTEXT',如何编码/写入?

我无法找到关于这个@ http://laravel.com/docs/schema的文档

谢谢!

php schema laravel laravel-4

3
推荐指数
2
解决办法
6649
查看次数

如何在Laravel 4中实现用户权限?

我基本上想要的是用户权限.

我的数据库中有一个名为'accounts'的表.有一个名为'group_id'的列.我想在'group_id'= 3时设置它,然后用户是admin.然后他可以查看特殊网站,按钮和类似的东西.我试图实现类似的东西:

public function ($roleName) {
    $role = $this->roles;

    if ($role->name == $roleName) {
        return true;
    }

    return false;
}
Run Code Online (Sandbox Code Playgroud)

此外,我不知道该模型需要什么以及如何,我需要一个新的和类似的东西.

php laravel laravel-4

3
推荐指数
1
解决办法
1万
查看次数

Laravel模型事件保存不会触发

我正在尝试模拟Ardent包正在做什么.这是在保存之前验证模型.

我创造了这个BaseModel(根据Laravel Testing decoded书).并添加了此代码:

class BaseModel extends Eloquent {
    protected static $rules = [];
    public $errors = [];

    public function validate(){
        $v = Validator::make($this->attributes, static::$rules);

        if($v->passes()) {
            return true;
        }

        $this->errors = $v->messages();

        return false;
    }

    public static function boot(){
        parent::boot();
        static::saving(function($model){
            if($model->validate() === true){
                foreach ($model->attributes as $key => $value) {
                    if(preg_match("/[a-zA-Z]+_confirmation/", $key)){
                        array_splice($model->attributes, array_search($key, array_keys($model->attributes)), 1);
                    }
                }
                echo "test"; //This is for debugging if this event is fired or not
                return …
Run Code Online (Sandbox Code Playgroud)

php unit-testing laravel eloquent

3
推荐指数
2
解决办法
3771
查看次数

如何在默认情况下选中复选框并从 Laravel 中的数据库中检索旧值

我有一个复选框,我想让我的复选框默认选中,如果用户取消选中复选框并保存表单,我需要在检索或编辑表单数据时取消选中该复选框。

我的查看页面

<div class="form-group {{ $errors->has('active') ? 'error' : '' }}">
                <label for="active" class="col-md-3 control-label">@lang('admin/assetdetails/form.active')</label>
                     <div class="controls col-md-7">
                            {{ Form::checkbox('active', 1, Input::old('active', $assetdetail->active), array('class'=>'isnesdbox')) }}
                            {{ $errors->first('active', '<span class="alert-msg"><i class="icon-remove-sign"></i> :message</span>') }}
                     </div>
            </div>
Run Code Online (Sandbox Code Playgroud)

给这个正确地从数据库中带回旧数据,但我无法将我的复选框选中为默认值

控制器:

public function postEdit($assetdetailId = null)
    {
        // Check if the location exists
        if (is_null($assetdetail = Assetdetail::find($assetdetailId)))
        {
            // Redirect to the blogs management page
            return Redirect::to('admin/settings/assetdetails')->with('error', Lang::get('admin/assetdetails/message.does_not_exist'));
        }



        // get the POST data
        $new = Input::all();

        // attempt validation
        if ($assetdetail->validate($new))
        {

            // Update …
Run Code Online (Sandbox Code Playgroud)

php checkbox laravel laravel-4

3
推荐指数
2
解决办法
3051
查看次数

MS Access - WHERE IN可以工作,但是哪里没有失败

我在MS Access上有以下查询(简化):

SELECT * FROM table1 WHERE table1.ID NOT IN (SELECT DISTINCT table1id FROM table2);
Run Code Online (Sandbox Code Playgroud)

我的问题是它不起作用,但这两个工作:

SELECT * FROM table1 WHERE table1.ID IN (SELECT DISTINCT table1id FROM table2);
SELECT * FROM table1 WHERE table1.ID NOT IN (2, 3);
Run Code Online (Sandbox Code Playgroud)

第一个只是给我一个空集,而我知道我有table11到9的id 记录,表2中只有2和3.

有帮助吗?

sql ms-access

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

调用 Laravel 中未定义的方法 Illuminate\Database\Eloquent\Collection::whereHas()

我的控制器上的以下代码段有问题:

$opportunity_date = $oppr_arr->opportunity_date;
$locations_array_result = explode(",",$locations_array_result);
$usersCount = User::where('activated', '=', 1)
                  ->where('group_id', '=', 1)
                  ->where('availability_date', '<=', $opportunity_date)
                  ->get();

foreach ($locations_array_result as $param) {
    $usersCount = $usersCount->whereHas('desiredLocation', function ($q) use($param) {
        $q->where('location_id', '=', $param );
    });
}

$usersCount = $usersCount->count();
Run Code Online (Sandbox Code Playgroud)

当我运行它时,它给了我以下错误:

Call to undefined method Illuminate\Database\Eloquent\Collection::whereHas()
Run Code Online (Sandbox Code Playgroud)

我的人际关系是这样建立的:

用户模型

public function desiredLocation()  {
     return $this->belongsToMany('Location', 'user_desired_location');
} 
Run Code Online (Sandbox Code Playgroud)

位置模型

class Location extends \Eloquent {
    protected $table = 'locations';
    protected $fillable = array('name');

    public function country() {
        return $this->belongsTo('Country');
    }
}
Run Code Online (Sandbox Code Playgroud)

user_desired_location表的数据库结构是: …

php eloquent laravel-4

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

如何在laravel中切换布局?

我正在尝试制作一个有2个或更多布局的网站,任何用户都可以更改他/她的布局.
我知道我们可以在控制器中使用布局,例如
public $ layout ='layouts.default'; ...和方法$ this-> layout-> nest('content',$ view,$ data);

但这对我来说没用,它总是默认的,我的意思是如何动态地改变$ layout的值?
例如,用户视图网站作为默认布局,但用户b将其视为黑色布局.

------------已编辑

我将布局存储在用户表中,但问题是如何在控制器中添加条件语句?存储布局名称的$ laravel变量是一个属性,只能在代码中设置一次,不能在任何方法之外添加语句来更改它.

php laravel laravel-3

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

如何在 JNA 中填充结构数组?

我正在尝试在 JNA 中使用以下 Windows API:

UINT WINAPI GetRawInputDeviceList(
  _Out_opt_  PRAWINPUTDEVICELIST pRawInputDeviceList,
  _Inout_    PUINT puiNumDevices,
  _In_       UINT cbSize
);
Run Code Online (Sandbox Code Playgroud)

UINT cbSize 是 RAWINPUTDEVICELIST 结构的大小,以字节为单位。如何在JNA中知道它?我偶然发现 16 是一个正确的值。

结构如下:

typedef struct tagRAWINPUTDEVICELIST {
  HANDLE hDevice;
  DWORD  dwType;
} RAWINPUTDEVICELIST, *PRAWINPUTDEVICELIST;
Run Code Online (Sandbox Code Playgroud)

pRawInputDeviceList 是一个 RAWINPUTDEVICELIST 结构数组,因此在 JNA 中我声明了以下签名:

UINT GetRawInputDeviceList(PointerByReference pRawInputDeviceList, IntByReference puiNumDevices, UINT cbSize);
Run Code Online (Sandbox Code Playgroud)

这是我在 JNA 中的结构:

public static class RawInputDeviceList extends Structure {

    public HANDLE hDevice;
    public DWORD dwType;

    public RawInputDeviceList() {
            // required for toArray()
    }

    public RawInputDeviceList(Pointer pointer) {
        super(pointer);
        read(); …
Run Code Online (Sandbox Code Playgroud)

java jna

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

界面在Laravel 4中不起作用

我正在尝试实现Laravel Auth Token(https://github.com/tappleby/laravel-auth-token),到目前为止它安装正常,但是当我尝试POST一个用户名/密码时,它就失败了.我已将此问题追溯到此:

Argument 1 passed to Illuminate\Auth\EloquentUserProvider::validateCredentials() must be an instance of Illuminate\Auth\UserInterface, instance of User given
Run Code Online (Sandbox Code Playgroud)

基本上代码运行:

$user = $this->users->retrieveByCredentials($credentials);
Run Code Online (Sandbox Code Playgroud)

..检索用户(工作原理:返回用户模型).然后运行:

$this->users->validateCredentials($user, $credentials)
Run Code Online (Sandbox Code Playgroud)

这就是崩溃发生的地方.我检查了我的用户模型,顶部是:

use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableInterface;

class User extends Eloquent {
 ...
}
Run Code Online (Sandbox Code Playgroud)

我认为这会使我的User模型成为UserInterface的一个实例,对吧?

有没有办法检查我的用户可以代表什么实例,和/或调试UserInterface没有应用的原因?

php laravel laravel-4

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

Laravel - 使用正则表达式仅验证字母,数字和空格

我试图通过这种方式验证由字母,数字和空格组成的字段:

$rules = array(
    'field'=> 'regex:/([A-Za-z0-9 ])+/'
);
Run Code Online (Sandbox Code Playgroud)

但如果我尝试插入像"和其他"这样的字符,验证仍然必须成功.

我的正则表达式有什么不对?

regex validation laravel

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