小编gdf*_*dfg的帖子

使用范围验证值的唯一性 - Ruby on Rails 5

我有posts一个带有模型的表和带有模型的Post表语言(列 - id、post_id、语言)Language。Post 有多种语言,Language 属于 Post。在后模型中,我有:

岗位型号:

has_many :languages
validates_associated :languages
Run Code Online (Sandbox Code Playgroud)

语言模型:

belongs_to :post
validates_uniqueness_of :language, scope: :post_id
Run Code Online (Sandbox Code Playgroud)

语言是表语言中的列。

post_controller 中允许使用语言字段(强参数):

def post_params
    params.require(:post).permit(:languages_attributes => [:language], ...)
Run Code Online (Sandbox Code Playgroud)

这是用于创建帖子的表单的视图:

<%= form_for @post do |f| %>
    .....
    <%= f.fields_for :languages do |language| %>
        <%=language.select :language, ['english', 'italian', 'french', 'spanish'], name: 'post[languages_attributes][][language]' %>
        <%=language.select :language, ['english', 'italian', 'french', 'spanish'], name: 'post[languages_attributes][][language]' %>
        <%=language.select :language, ['english', 'italian', 'french', 'spanish'], name: 'post[languages_attributes][][language]' %>
        <%=language.select :language, ['english', 'italian', 'french', 'spanish'], …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2 ruby-on-rails-4

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

如何解决"只能安装一个:"的冲突?

我已经通过Composer安装了一个软件包,并且因为软件包而安装了Guzzlehttp.之后我试图通过Composer安装另一个软件包,这也需要Guzzlehttp和Composer,试图再次安装它.

但我得到了这个错误:

问题1

  • 只能安装以下之一:guzzlehttp/guzzle [6.2.0,6.0.2].

  • 只能安装以下之一:guzzlehttp/guzzle [6.0.2,6.2.0].

  • 只能安装以下之一:guzzlehttp/guzzle [6.0.2,6.2.0].

我看到了什么问题,但我不知道如何解决它.

composer-php

10
推荐指数
2
解决办法
6264
查看次数

获取当前语言 next-i18next

我正在将 NextJS 与 next-i18next 一起使用。这是我的主页:

import {withTranslation}  from '../config/next-i18next';

const Home = function Home() {
  return (<div>test</div>)
};

Home.getInitialProps = async () => {
  return {namespacesRequired: ['home']}
};

export default withTranslation('home')(Home);
Run Code Online (Sandbox Code Playgroud)

我想要的是在组件/页面中获取当前语言,我该怎么做?

internationalization node.js i18next reactjs next.js

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

滚动到页面底部后,Bootstrap词缀停止工作

我有一个带有固定左侧边栏的长页面:

<div id="sidebar">
    <ul>
        <li>menu 1</li>
        <li>menu 2</li>
        <li>menu 3</li>
        <li>menu 4</li>
        <li>menu 5</li>
        <li>menu 6</li>
        <li>menu 7</li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

和js affix:

$("#sidebar").affix({offset: {top: 0, bottom:420} });
Run Code Online (Sandbox Code Playgroud)

我有和页脚height:390px.当我第一次滚动到页面底部并尝试向上滚动时,侧边栏返回到它的第一个位置(到页面顶部),它position:fixed不再是.它采用内联样式position:relative,并附带Bootstrap JS.当我滚动到顶部时,我看到类已更改为affix-top.每个其他滚动页面位置,类affix,即使它是页面底部和侧边栏保持position:relative.如果我只使用:

$("#sidebar").affix({offset: {top: 0} });
Run Code Online (Sandbox Code Playgroud)

,没有bottom,它工作正常,但我需要bottom,因为footer.

哪里可以问题?

html css twitter-bootstrap affix twitter-bootstrap-3

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

使用一个 NPM 命令启动 React-create-app 和 Electron.js

我有简单的自定义入门包react-create-appElectron.js. 我已添加到 package.json 文件:

"scripts": {
    "electron": "electron .",
    "start": "cross-env BROWSER=none react-scripts start",
....
Run Code Online (Sandbox Code Playgroud)

我可以用npm run electron- 启动 Electron 并用 React启动npm start

我想要的是只用一个命令来启动 React 和 Electron npm run both

我努力了:

"both": "\"npm start\" \"npm run electron \"", 
Run Code Online (Sandbox Code Playgroud)

但我在日志文件中收到错误:

退出状态 1 node_modules\npm\node_modules\npm-lifecycle\index.js:301:16) - 没有具体内容

我已经尝试过并且:

    "start": "npm run electron . && cross-env BROWSER=none react-scripts start",
Run Code Online (Sandbox Code Playgroud)

,但这会启动 Electron,当我关闭它时,它会启动 React 应用程序。

又报错:

"electron": "electron .",
"start": "cross-env BROWSER=none react-scripts start",
"both": "\"npm run …
Run Code Online (Sandbox Code Playgroud)

node.js npm reactjs electron npm-scripts

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

React::ServerRendering::PrerenderError in...Rails 5,React

我正在Rails 5react-rails宝石一起使用。我想使用服务器端渲染,但看到以下错误:

Home#index 中的 React::ServerRendering::PrerenderError

使用 {} 预渲染 Main 时遇到错误“# ExecJS::ProgramError: TypeError: Cannot read property 'serverRender' of undefined”

这是我的/assets/javascripts/application.js

//= require rails-ujs
//= require jquery
//= require react
//= require react_ujs
//= require_tree .
Run Code Online (Sandbox Code Playgroud)

这是javascripts/components.jsx

class Main extends React.Component{
    render(){
        return (
            <h1>Hello</h1>
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

这是视图:

<%= react_component('Main', {}, {prerender: true}) %>
Run Code Online (Sandbox Code Playgroud)

没有prerender选择,一切正常。

ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 reactjs

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

更新/还原NuGet软件包时访问被拒绝错误

我创建了跨平台Xamarin Forms项目,此后,我尝试更新或还原软件包,但出现此错误:

恢复NuGet软件包时发生错误:
拒绝访问路径'Xamarin.Forms.Build.Tasks.dll'。

我正在以管理员身份运行Visual Studio 2017社区,并且NuGet每次开始更新/还原包之前都会清除缓存。

nuget xamarin nuget-package-restore xamarin.forms

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

将默认值(当前日期时间)设置为表列 - CodeIgniter 3 迁移

我有这个迁移:

public function up(){
    $this->dbforge->add_field([
        'id'=>['type'=>'int', 'unique'=>true, 'unsigned'=>true,'auto_increment'=>true],
        'email'=>['type'=>'varchar', 'constraint'=>200, 'null'=>true],
        'password'=>['type'=>'varchar', 'constraint'=>250],
        'created_at'=>['type'=>'datetime', 'default' => 'CURRENT_TIMESTAMP'],
    ]);
    $this->dbforge->add_key('id', TRUE);
    $this->dbforge->create_table('users', TRUE);
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试设置created_at带有默认值列的表- 当前日期时间。我正在使用'default' => 'CURRENT_TIMESTAMP',但出现此错误:

'created_at' 的默认值无效 .... NOT NULL,created_atdatetime NOT NULL DEFAULT 'CURRENT_TIMESTAMP',

我使用CodeIgniter 3MySQL

codeigniter codeigniter-3

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

按键将平面数组分组为多维数组,如果我们不知道有多少级别.PHP

我有这个数组:

$arr = [
["id"=>20,
    "name"=>"a",
    "parent"=>28,
],
["id"=>21,
    "name"=>"a-child",
    "parent"=>20,
],
["id"=>27,
    "name"=>"a-child-b",
    "parent"=>20,
],
["id"=>28,
   "name"=>"A parent",
   "parent"=>0,
],
["id"=>12,
    "name"=>"no parent",
    "parent"=>0,
]];
Run Code Online (Sandbox Code Playgroud)

我想要的是根据parent键对其进行分组,其中parent = id && parent > 0或者id是该元素的父元素,如果父键大于零,则元素具有父元素.

在上面的数组id=12中没有父元素,id=20有子元素21, 27,它是一个子元素id=28.

我做了什么 :

    public function sort($arr){

    $result = [];

    // Get child
    foreach($arr as $key => $row) {
        if($row['parent'] > 0) {
            $result[$row->parent][] = ['id' => $row['id'], 'name' => $row['name']];
            unset($arr[$key]);
        } …
Run Code Online (Sandbox Code Playgroud)

php arrays sorting algorithm multidimensional-array

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

Rails 5中的密码确认

这是我的看法:

<%=form_for [:admin, @user] do |f|%>

    <ul>
        <% @user.errors.full_messages.each do |msg| %>
            <li><%= msg %></li>
        <% end %>
    </ul>

    <%=f.label :name %>
    <%=f.text_field :name %>


    <%=f.label :email %>
    <%=f.text_field :email %>

    <%=f.label :password %>
    <%=f.password_field :password %>

    <%=f.label :password_confirmation %>
    <%=f.password_field :password_confirmation%>

    <%=f.submit "Submit" %>
<%end%>
Run Code Online (Sandbox Code Playgroud)

添加用户的控制器代码:

def create
    @user = User.new(user_params)

    if @user.save
        redirect_to admin_users_path
    else
        render 'new'
    end
end

private
def user_params
    params.require(:user).permit(:name, :email, :password)
end
Run Code Online (Sandbox Code Playgroud)

这些是模型中的验证:

validates :name, presence: true
validates :email, presence: true
validates :password, presence: …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-5

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