标签: controller

输入验证在哪里属于MVC应用程序?

我有一个MVC应用程序从表单接收输入.
这是一个登录表单,因此唯一需要的验证是检查输入是否为非空.
在我将它传递给模型之前,我在控制器中验证它.
这是最佳做法吗?它属于模型吗?

language-agnostic model-view-controller controller model

23
推荐指数
2
解决办法
5982
查看次数

Codeigniter定义basepath或exit

我在一个demo codeigniter项目的控制器上方注意到这一小段代码,并想知道它做了什么以及我是否应该使用它.

defined('BASEPATH') OR exit('No direct script access allowed');
Run Code Online (Sandbox Code Playgroud)

如果我应该在哪里使用它?控制器?楷模?都?等等..

security controller codeigniter

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

组件正在将不受控制的自动完成更改为受控

你能告诉我为什么我收到错误“一个组件正在改变一个不受控制的自动完成来控制。元素不应该从不受控制切换到受控制(反之亦然)。决定在整个生命周期内使用受控制或不受控制的自动完成元素组件。”

成分 :


function AutoComplete(props) {

  const defaultProps = {
    options: props.options,
    getOptionLabel: option => option.name,
  };

  const handleChange = (e, value) => {
    props.onChange(value);
  };

  return (
    <Autocomplete
      {...defaultProps}
      renderInput={params => (
        <TextField {...params} label={props.label} margin="normal" />
      )}
      onChange={handleChange}
      value={props.value}
    />
  );
}

Run Code Online (Sandbox Code Playgroud)

调用自动完成:

               <Controller
                control={control}
                name = 'country'
                as = {
                  <AutoComplete
                    options={countryOptions}
                    onChange={selectCountryHandler}
                    label="Country"
                    value={selectedCountry  || ''}
                  />
                } />
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个错误?

controller autocomplete reactjs material-ui react-hook-form

23
推荐指数
3
解决办法
9945
查看次数

CodeIgniter:控制器中的全局变量

我是CodeIgniter的新手,在我继续的时候遇到的问题是,在程序编码中,很容易修复

目前的问题是:我有这个控制器

class Basic extends Controller {

    function index(){
        $data['title'] = 'Page Title';
        $data['robots'] = 'noindex,nofollow';
        $data['css'] = $this->config->item('css');
        $data['my_data'] = 'Some chunk of text';
        $this->load->view('basic_view', $data);
    }

    function form(){
        $data['title'] = 'Page Title';
        $data['robots'] = 'noindex,nofollow';
        $data['css'] = $this->config->item('css');
        $data['my_other_data'] = 'Another chunk of text';
        $this->load->view('form_view', $data);
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,一些数组项重复:

$data['title'] = 'Page Title';
$data['robots'] = 'noindex,nofollow';
$data['css'] = $this->config->item('css');
Run Code Online (Sandbox Code Playgroud)

难道没有办法让它们在控制器中"全局",所以我不必为每个函数键入它们吗?像(但这给我错误):

class Basic extends Controller {

    // "global" items in the $data array
    $data['title'] = 'Page Title';
    $data['robots'] = …
Run Code Online (Sandbox Code Playgroud)

arrays controller codeigniter global-variables

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

Symfony2:控制器中动作/路径的完整路径

我需要控制器内部动作的完整路径,通过电子邮件发送.我怎样才能{{ path('_route') }}从我的控制器内部实现类似的东西?

controller symfony

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

AngularJS:从ng-repeat动态分配控制器

我正在尝试为包含的模板动态分配控制器,如下所示:

<section ng-repeat="panel in panels">
    <div ng-include="'path/to/file.html'" ng-controller="{{panel}}"></div>
</section>
Run Code Online (Sandbox Code Playgroud)

但Angular抱怨说这{{panel}}是不确定的.

我猜,{{panel}}是不是定义尚未(因为我可以附和了{{panel}}在模板中).

我已经看到很多人设置ng-controller等于变量的例子如下:ng-controller="template.ctrlr".但是,如果没有创建重复的循环循环,我无法弄清楚如何{{panel}}ng-controller需要时获得可用值.

PS我也尝试ng-controller="{{panel}}"在我的模板中设置(认为​​它必须已经解决),但没有骰子.

javascript controller dynamic assign angularjs

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

为什么Rails会为每个请求创建一个控制器?

从我之前的问题中我了解到Rails为每个请求创建一个控制器实例.

我的问题是,因为这个主题与我正在研究的项目的设计有关:

为什么Rails会创建一个新的实例

class SomeController < ApplicationController; end
Run Code Online (Sandbox Code Playgroud)

处理每个传入的请求?为什么不创建单例对象并将请求转发给这个?这似乎更有效,因为我们不会浪费资源来分配和清理请求对象?

controller ruby-on-rails

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

Rspec:2级嵌套资源的控制器规范

我的routes.rb

  namespace :magazine do
   resources :pages do
     resources :articles do
       resources :comments
     end
   end
  end
Run Code Online (Sandbox Code Playgroud)

在为评论编写控制器规范时:

describe "GET 'index'" do
    before(:each) do
     @user = FactoryGirl.create(:user)
     @page = FactoryGirl.build(:page)
     @page.creator = @user
     @page.save
     @article = FactoryGirl.create(:article)
     @comment_attributes = FactoryGirl.attributes_for(:comment, :article_id => @article )
   end
it "populates an array of materials" do
  get :index, ??
  #response.should be_success
  assigns(:comments)
end

it "renders the :index view" do
  get :index, ?? 
  response.should render_template("index")
end

end 
Run Code Online (Sandbox Code Playgroud)

任何想法如何给页面和文章引用get:index ?? 如果我给:get:index,:article_id => @ article.id
我得到的错误如下:

 Failure/Error: get :index, …
Run Code Online (Sandbox Code Playgroud)

controller rspec ruby-on-rails

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

如何使用不同的fxml文件创建多个javafx控制器?

我一直在看一些博客和其他stackoverflow问题,我没有看到我的问题的直接答案.我正在创建一个javafx gui客户端,我希望我的菜单栏在一个fxml中是一个控制器,然后我希望内容区域是额外的fxml文件.登录屏幕将是一个fxml,登录屏幕将是应用程序的主要内容,并将在一个fxml中.我该怎么做呢?

我只是不想在同一个文件中拥有我的登录,菜单栏和主要内容的所有代码.这是我正在做的工作的图像:

在此输入图像描述

java controller javafx javafx-2 fxml

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

在AngularJS中组合CREATE和EDIT控制器是一种好习惯吗?

CREATE和EDIT控制器中有许多重复的代码.这些控制器可以组合成一个,以最大限度地减少重复代码.

问题:我需要区分在表单提交上使用哪种方法 - 例如create()或edit().

解决方案:我可以添加$scope.mode例如并设置$scope.mode='edit'用户是否单击"编辑"按钮或设置$scope.mode='add'用户是否单击"添加"按钮.

我可以使用服务来最小化重复代码,但仍然会有重复的代码.例如,在两个控制器中,我有cancel()方法,它清除表单并隐藏它.我可以在服务中存储clearForm()和hideForm(),但是这些代码将在两个控制器中重复:

$scope.cancel = function() {
    Service.clearForm();
    Service.hideForm();
};
Run Code Online (Sandbox Code Playgroud)

问题:

  • 在AngularJS中组合CREATE和EDIT控制器是一种好习惯吗?
  • 有没有什么好的做法可以减少重复代码?

controller crud angularjs

22
推荐指数
2
解决办法
8557
查看次数