小编Pet*_*ete的帖子

如何使用Eloquent删除表中的所有行?

我的猜测是使用以下语法:

MyModel::all()->delete();
Run Code Online (Sandbox Code Playgroud)

但那没用.我确信它非常简单,但我已经搜索了关于这个主题的文档而无法找到它!

laravel eloquent laravel-4

115
推荐指数
10
解决办法
14万
查看次数

Laravel样式表和javascript不会加载非基本路由

好的 - 我知道这是一个非常基本的问题,但我无法弄清楚.这是关于Laravel的问题.

基本上,我将样式表嵌入到我的默认布局视图中.我目前只是使用常规css链接它们,例如:

<link rel="stylesheet" href="css/app.css" />
Run Code Online (Sandbox Code Playgroud)

当我处于单级路线(例如/ about)时它很有效,但是当我走得更深时停止工作,例如/ about/me.

如果我查看Chrome的开发者控制台,我会看到以下一些错误(仅适用于更深的路线):

Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://example.dev/about/css/app.css".
Run Code Online (Sandbox Code Playgroud)

很明显,它现在正在寻找"about"文件夹中的css - 当然这不是一个文件夹.

我只是想让它在同一个地方寻找资产而不管路线.

php laravel blade

91
推荐指数
6
解决办法
18万
查看次数

如何使用Laravel的Eloquent/Fluent将每一行设置为相同的值?

我需要更新所有行的一个数据库,以便在某一领域的所有他们等于单个值.这是一个例子.

假设我的数据库表是这样的:

id    |   data   |  confirmed
1     | someData |      0
2     | someData |      1
3     | someData |      0
Run Code Online (Sandbox Code Playgroud)

我想执行一个查询,将每行的确认字段设置为1.

我可以这样做:

$rows = MyModel::where('confirmed', '=', '0')->get();
foreach($rows as $row) {
    $row->confirmed = 0;
    $row->save();
}
Run Code Online (Sandbox Code Playgroud)

但似乎会有更好的方法吗?单个查询只会说"将每行'确认'字段设置为1".

Laravel的Eloquent/Fluent中是否存在这样的查询?

fluent laravel eloquent laravel-3

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

WooCommerce勾选"付款后完成"操作

我正在使用WooCommerce和Wordpress.我有一个自定义许可证密钥生成器,当有人通过WooCommerce成功购买我的插件时,我希望它能生成许可证密钥.

看起来很简单:

  1. 用户在我的网站上完成结帐
  2. 用户被重定向到Paypal,他们在那里输入他们的付款凭证
  3. Paypal告诉我的网站付款已完成
  4. 我勾选到某种"付款完成"或"order_complete"WooCommerce操作并生成许可证.

这就是问题所在:我真的不确定哪个钩子可以很好地用于此.Woocommerce 在他们的网站上列出了他们的整个钩子集合,但几乎没有关于哪个有利于什么的文档.

基于钩子名称,我认为这woocommerce_payment_complete将是一个很好的行动.不幸的是,似乎根本没有被解雇; 我读过的一些地方说它永远不会被解雇.

我也读过一些关于Paypal IPN的内容,但是我不明白我是如何从那里获取通知的(连接到Woocommerce钩子吗?)

简而言之,我想在验证付款后立即生成许可证密钥.为了达到这个目的,我该怎么做?

php wordpress paypal woocommerce

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

如何在Laravel中链接数据库关系(多个has_many?)

我正在使用Laravel,这很棒,但我遇到了数据库的问题.

假设我们有三个表,如下所示:

表1:页面

id    |   route   |  title
Run Code Online (Sandbox Code Playgroud)

表2:元素

id    |   page_id   |  type
Run Code Online (Sandbox Code Playgroud)

表3:内容

id    |   element_id   |  data
Run Code Online (Sandbox Code Playgroud)

我想对页面进行单一选择,然后选择具有该页面id的所有元素,并且对于每个元素,它应该选择具有元素id的所有内容行.

我希望在Page模型中有一个静态的load_by_route($ route)函数,当调用它时,它将使用该路由加载并返回页面信息以及元素和内容,如上所述.理想情况下,它将返回包含所有这些信息的单个对象/数组.

基本上,我不确定如何将has_many()调用链接在一起,以便获得两级关系.

php mysql activerecord laravel eloquent

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

如何在Sublime Text 3中搜索特定文件类型的多个文件

我想使用Shift + Ctrl + F搜索对话框在某个目录(及其子目录)中的所有*.php文件中搜索字符串.

我的猜测是将搜索位置设置为:

c:\example\*.php
Run Code Online (Sandbox Code Playgroud)

但这给出了一个错误:

Unable to open c:\example\*.php
Run Code Online (Sandbox Code Playgroud)

有没有办法执行我希望执行的搜索?

sublimetext sublimetext2 sublimetext3

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

如何在 PHP 应用程序中正确包含 Angular 应用程序

假设我从一个 PHP 应用程序开始。在网站的其中一个页面上,有一个复杂的交互式应用程序,我想将 Angular 用于它。问题是,我仍然希望该页面的页眉和页脚与网站的其余部分相匹配。我希望能够做这样的事情:

// main-template.php
<html>
    <head>
        <title>My Site-wide Header</title>
        <script src="site-wide-script.js"></script>
        <link href="site-wide-styles.css" rel="stylesheet">
        <?php if ($somevar == true) : ?>
            <?php echo "Yes, it has to be PHP"; ?>
        <?php endif; ?>
    </head>
    <body>
        <header>
            <ul>
                <li><a href="/home">Home</a></li>
                <li><a href="/about">About</a></li>
                <li><a href="/contact">Contact</a></li>
            </ul>
        </header>

        <!-- Drop entire Angular application here -->

    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

这一定程度上为我的作品只是PHPinclude的角度HTML文件存在,但是这是相当janky因为,当然,角index.html文件已经包括htmlbody,等标签。当然,我可以 DOM 解析 Angular 文件并在包含之前修复所有这些……但我更喜欢更好的解决方案。

在我的搜索中,我似乎找不到任何官方推荐的方法。实际上,我似乎根本找不到任何人这样做的例子——我所有的搜索都只是发现人们在用AngularJS做类似的事情,而不是 Angular。有没有什么体面的方法可以用 Angular 实现这一点?

php angular

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

如何在Laravel中定义默认回退路由?

我目前正在将自定义CMS从Laravel 3升级到Laravel 4(由于各种原因,此升级非常重要).

在现有版本中,它具有路由设置,以便可以单独定义路由 - 但是如果有人试图加载未明确定义的路由,系统会捕获它并将其发送到"页面处理器" - 基本上检查数据库中是否存在CMS页面/帖子.

Laravel 3中的"后备"或"默认"路由处理行如下所示:

Route::get('(.*)', array('uses' => 'myPageLoading@method'));
Run Code Online (Sandbox Code Playgroud)

我的问题是Laravel 4不支持这种语法.如何在Laravel 4中执行此操作?

laravel laravel-4

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

PHP - 用于查询字符串的多维数组

搜索了这么久但没有得到任何可行的答案.


A)输入:

$array = array(
            'order_source' => array('google','facebook'), 
            'order_medium' => 'google-text'
          );
Run Code Online (Sandbox Code Playgroud)


看起来像:

Array
(
    [order_source] => Array
        (
            [0] => google
            [1] => facebook
        )

    [order_medium] => google-text
)
Run Code Online (Sandbox Code Playgroud)


B)所需产量:

order_source =谷歌&order_source = Facebook和order_medium =谷歌的文本


C)我尝试过的(http://3v4l.org/b3OYo):

$arr = array('order_source' => array('google','facebook'), 'order_medium' => 'google-text');

function bqs($array, $qs='')
{
    foreach($array as $par => $val)
    {
        if(is_array($val))
        {
            bqs($val, $qs);       
        }
        else
        {
           $qs .= $par.'='.$val.'&';
        }
    }
    return $qs;
}

echo $qss = bqs($arr);
Run Code Online (Sandbox Code Playgroud)


D)我得到了什么: …

php recursion multidimensional-array query-string

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

有没有办法在+运算符的对面做一个"不相邻"的选择器

在css中,可以使用+运算符选择元素后面的元素.例如,我只能选择直接跟随标签的输入:

label + input {
    color: red;
}
Run Code Online (Sandbox Code Playgroud)

有没有办法做相反的事情,所以像"不相邻"?在我的例子中,有没有办法选择直接跟随标签的所有输入?

编辑:它需要选择不直接跟随标签的所有输入,包括没有任何标签的地方的输入.

css css-selectors css3

6
推荐指数
2
解决办法
1343
查看次数