标签: controller

Laravel with Dynamodb

我创建了一个User模型和UserController

和我的模型 User.php是

<?php    
namespace App;    
use Illuminate\Notifications\Notifiable;
use Aws\DynamoDb\DynamoDbClient;

class User extends \Aws\DynamoDb\DynamoDbClient
{
    protected $table = 'users';
    protected $fillable = array('email');
    protected $primaryKey = 'user_id';
}
Run Code Online (Sandbox Code Playgroud)

当我在UserController中创建一个对象时

public function postSignUp(Request $request)
    {    
        $user = new User();
Run Code Online (Sandbox Code Playgroud)

它说$ user = new User();(line30)错误

传递给Aws\AwsClient :: __ construct()的参数1必须是类型数组,没有给定,在第30行调用C:....\laravel\app\Http\Controllers\UserController.php并定义

谢谢!!

php controller model amazon-web-services laravel

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

Symfony3表单:如何知道在表单中单击了哪个按钮?

Symfony3表单:我已设法构建并呈现如下所示的表单:

<form action="/member/john/actions" method="post" name="form">
    <input type="submit" value="Block John" name="block">
    <input type="submit" value="Remove from my friends" name="remove">
    <input type="hidden" value="LeiajURspTa9c8JEUYtvepki0b_CdL9dMWqEZxOYvfk" name="form[_token]" id="form__token">
</form>
Run Code Online (Sandbox Code Playgroud)

单击按钮"Block John"或时"Remove from my friends",控制器将其路由到所需位置(member_friend_actions),并且能够在死亡之前显示调试转储值"Submitted!"文本.

我的路由器"member_friend_actions"的控制器设置如下:

/**
 * A common post location to catch all operations like add/remove/cancel/block friends
 *
 * @Route("/{username}/actions", name="member_friend_actions")
 * @Method("POST")
 */
public function allActionsFriendAction(Request $request, User $friend)
{
    $form = $this->createAllActionsFriendForm($friend);
    $form->handleRequest($request);

    if ($form->isSubmitted() && $form->isValid()) {

        //$clicked = $form->getData();
        $clicked …
Run Code Online (Sandbox Code Playgroud)

php controller symfony-forms symfony

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

Java - Spring返回JSON对象/数组

我有一个基本的Rest Controller,它将json中的模型列表返回给客户端:

@RestController
public class DataControllerREST {

    @Autowired
    private DataService dataService;

    @GetMapping("/data")
    public List<Data> getData() {
        return dataService.list();
    }

}
Run Code Online (Sandbox Code Playgroud)

以这种格式返回数据:

[

    {
        "id": 1,
        "name": "data 1",
        "description": "description 1",
        "active": true,
        "img": "path/to/img"
    },
    // etc ...

]
Run Code Online (Sandbox Code Playgroud)

这非常适合开始,但我想要返回这种格式的数据:

[
    "success": true,
    "count": 12,
    "data": [
        {
            "id": 1,
            "name": "data 1",
            "description": "description 1",
            "active": true,
            "img": "path/to/img"
        },
        {
            "id": 2,
            "name": "data 2",
            "description": "description 2",
            "active": true,
            "img": "path/to/img"
        },
    ]
    // etc ... …
Run Code Online (Sandbox Code Playgroud)

java rest spring json controller

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

控制器方法未在laravel中定义

我是Laravel的新手,并试图学习形式.目前我正在尝试上传文件,我的创建页面如下所示:

<html>
<head>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">

<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>   


<body>
{!! Form::open(['action' => 'MovieController@create', 'enctype' => 'multipart/form-data']) !!}
    <div class="form-group">
    {{Form::label('name', 'Name')}}
    <br>
    {{Form::text('name')}}
    </div>
    <div class="form-group">
    {{Form::label('description', 'Description')}}
    <br>
    {{Form::textarea('description')}}
    </div>
    <div class="form-group">
    {{Form::label('release_date', 'Release Date')}}
    <br>
    {Form::date('release_date')}}
    </div>
    <div class="form-group">
    {{Form::label('country', 'Country')}}
    <br>
    {{Form::text('country')}}
    </div>
    <div class="form-group">
    {{Form::label('poster_name', 'Poster Image')}}
    {{Form::file('poster_name')}}
    </div>
    <div class="form-group">
    {{Form::label('file_name', 'Movie File')}}
    {{Form::file('file_name')}}
    </div>
    {{Form::submit('Submit',['class' …
Run Code Online (Sandbox Code Playgroud)

php forms controller file laravel

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

在Rails 5的控制器中使用什么而不是after_commit?

今天我尝试使用一个很好的回调:after_commit在对象写入数据库时​​触发,但是,我收到了来自Rails的错误消息:

ActionController::RoutingError (undefined method `after_commit' for ImagesController:Class
Did you mean?  after_action):
Run Code Online (Sandbox Code Playgroud)

嗯,这很令人尴尬!似乎这个回调被弃用了!通过搜索,我尝试使用:after_create_commit,它给了我同样的错误.

第三步是尝试:after_action.这里提出了一个问题: 如何使其工作方式与:after_commit?

我已经尝试过apidock.com - 它真的很小!我也尝试过api.rubyonrails.org - 它是关于块的,但我不是一个了解它的红宝石忍者.所以我真的很感激你是否可以在它上面洒一些光!

ImagesController:

class ImagesController < ApplicationController
  after_create_commit :take_image_to_album

  def take_image_to_album
    if check_album
      add_inner_to_album(@image)
    end
  end

  def create
    @image = Image.create(image_params.merge(:user_id => current_user.id)

    respond_to do |format|
      unless @image.save
        format.html { render :show, notice: "Error!" }
        format.json { render json: @image.errors, status: :unprocessable_entity }
      else
        format.html
        format.json { render :show, status: :ok, location: @image }
      end
    end
  end
  ...

  def add_inner_to_album(image)
    contents …
Run Code Online (Sandbox Code Playgroud)

ruby controller callback ruby-on-rails-5

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

选择html中的选项,使用for循环更改为laravel集合形式

如何将我的html表单更改为laravel集体表单

 <select style="width:50%;margin-top: 10px;" name="idw">
     <option value="0" disabled="true" selected="true">choose</option>
     @foreach($warehouse as $w)

     <option value="{{$w->id}}" name="idw" id="idw">{{$w->name}}</option>

     @endforeach
 </select>
Run Code Online (Sandbox Code Playgroud)

以我的集体形式

 {!! Form::select('type', 
     ['Task' => $w->id  =>w-> $name ],
     null, 
     ['class' => 'form-control chosen-type', 'placeholder' => 'Please Choose']
     )!!}
Run Code Online (Sandbox Code Playgroud)

我之前使用过集体形式

php controller laravel laravel-5 laravelcollective

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

适用于所有其他API控制器的Symfony 4基本控制器类

在我的Symfony 4应用程序中,我需要有一个多个控制器,每个控制器用于在不同的前缀中挂载/分组各种API端点.

每个控制器都需要先进行初始化,然后在API客户端的类属性中设置并设置凭据.为了避免代码重复所有这些,我想创建一个BaseController,以便其他人可以扩展并直接访问或拥有他需要的所有客户端属性.

基础控制器:

<?php
namespace App\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Vendor\ApiClient;

class BaseApiController extends Controller
{
    /**
     * @var ApiClient
     */
    protected $apiClient;

    public function __construct( array $apiClientCredentials, ApiClient $apiClient )
    {
        $this->apiClient = $apiClient;
        $this->apiClient->credentials($apiClientCredentials['id'], $apiClientCredentials['main_password']);
    }

}
Run Code Online (Sandbox Code Playgroud)

我希望能够调用/使用API​​属性的众多类似控制器之一:

<?php
namespace App\Controller;

use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\JsonResponse;

/**
 * Account endpoints
 * @Route("/account")
 */
class AccountApiController extends BaseApiController
{

    /**
     * Get the balance.
     * @Route("/balance", name="balance")
     */
    public function balance()
    {
        return new JsonResponse($this->apiClient->getBalance());
    }
}
Run Code Online (Sandbox Code Playgroud)

这就是我所拥有的,但仍然没有按预期工作,想知道将这种设置放在一起的最佳做法是什么?

编辑:这是我收到的错误消息.

Cannot …
Run Code Online (Sandbox Code Playgroud)

php api controller symfony symfony4

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

Symfony 4-如何从Controller到FormType访问变量

我的ListProductsController变量中有$ parentId。我想获取$ parentId值并在我的SearchProductType中使用它:

  public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        ->add('price',EntityType::class,[
            'class'=>Product::class,
            'choice_label'=>'price',
            'choice_value'=>'price',
            'placeholder'=>'Default',
            'query_builder' => function (EntityRepository $er){
                return $er->createQueryBuilder('product')
                    ->innerJoin('product.category','c')
                    ->addSelect('c')
                    ->innerJoin('product.manorwomen','m')
                    ->addSelect('m')
                    ->where('c.parent_id=1')

            },
            'expanded'=>false,
            'multiple'=>false
        ])
        ->add('submit',SubmitType::class)
    ;
}
Run Code Online (Sandbox Code Playgroud)

c.parent_id必须等于控制器中的$ parentId

->where('c.parent_id=$parentId')
Run Code Online (Sandbox Code Playgroud)

怎么做?

forms variables controller symfony access

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

如何在Symfony 4函数中替换变量?

我在Controller中创建了一个与Entity一起使用的函数Members.我现在要做的是使功能灵活,这样我就可以将它用于我所有其他实体.因此,实体的名称应该取决于slug.所以在这种情况下slug = members:

/**
  * @Route("/pages/{slug}/forms", name="forms", methods={"POST", "GET"})
  */

  public function form($slug, Request $request){
     $item = new Members();    
     $item= $this->getDoctrine()->getRepository(Members::class)->find($id);
 }
Run Code Online (Sandbox Code Playgroud)

所以我要做的是用slug替换实体名称:

/**
  * @Route("/pages/{slug}/forms", name="forms", methods={"POST", "GET"})
  */

  public function form($slug, Request $request){
     $item = new $slug();    
     $item= $this->getDoctrine()->getRepository($slug::class)->find($id);
 }
Run Code Online (Sandbox Code Playgroud)

但是我收到一条错误消息:

尝试从全局命名空间加载类"成员".你忘记了"使用"声明吗?

这是否与slug的大写/小写有关?

php variables controller function symfony

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

在php中获取基于范围的索引中的数组值

我想获得1-3的数组值,但包括'.' 每一次分裂.示例有一个text ="no.this.is.just.example"我想只取0-2索引,所以$ merge将是"no.this.is"

我试过了

$cut = 3;
$text = explode('.',"no.this.is.just.example");

for($i=0; $i<$cut;$i++){
   if($cut-1==$i){
     $merge .= $text[$i];
   }
   else{
     $merge .= $text[$i].'.';
   }
}
Run Code Online (Sandbox Code Playgroud)

有最简单的方法吗?

php regex arrays controller laravel

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