小编ark*_*ark的帖子

Prototypal Inheritance最佳实践?

我刚刚进入JavaScript,我正试图围绕原型继承.似乎有多种方法可以达到同样的效果,所以我想看看是否有任何最佳实践或理由以一种方式做事.这就是我在说的:

// Method 1
function Rabbit() {
    this.name = "Hoppy";

    this.hop = function() {
        console.log("I am hopping!");
    }
}

// Method 2
function Rabbit() {}

Rabbit.prototype = {
    name: "Hoppy",

    hop: function() {
        console.log("I am hopping!");
    }
}

// Method 3
function Rabbit() {
    this.name = "Hoppy";
}

Rabbit.prototype.hop = function() {
    console.log("I am hopping!");
}

// Testing code (each method tested with others commented out)
var rabbit = new Rabbit();
console.log("rabbit.name = " + rabbit.name);        
rabbit.hop();
Run Code Online (Sandbox Code Playgroud)

所有这些似乎都具有相同的效果(除非我遗漏了一些东西).那么一种方法优于另一种方法吗?你怎么做呢?

javascript prototypal-inheritance

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

Rails - 一个模型上的两个外键都指向相同的模型

我是ActiveRecord协会的新手.我正在草拟一个应用程序,该应用程序可以跟踪在一组用户中欠谁的钱.一个Expense模型和User模型似乎是自然的选择,我只是不知道如何界定两者之间的关系.例如,我想跟踪债权人("所有者")和每笔费用的债务人,但这实际上只是两个返回用户的外键.此外,每个用户可以有多种费用(作为债权人和债务人)我迄今为止对协会的最佳猜测是:

class Expense
    # belongs_to or has_one here?
    # Not sure about class => User syntax:
    # need to alias to foreign keys that reference the same model
    belongs_to :creditor, :class => User 
    belongs_to :debtor, :class => User

class User
    # has_many expenses defines a creditor relationship (user owns expense)
    # how to define debtor relationship? (belongs_to...?)
    has_and_belongs_to_many :expenses
Run Code Online (Sandbox Code Playgroud)

我已经阅读了关于关联的Rails指南,但我仍然在外键和连接表上相当丢失.任何输入都非常感谢!

sql activerecord ruby-on-rails

11
推荐指数
2
解决办法
8772
查看次数

Rails - 与同一模型的多个关联

我正在构建一个Rails应用程序来跟踪组成员之间的费用/债务,让我们说一个家庭.到目前为止,我有群组,用户和费用的模型 - 基础知识.现在我正试图弄清楚群组和用户之间的关联.例如,一个组可以拥有许多用户,并且用户可以拥有/属于许多组,因此我使用连接表设置了HABTM关联.但我很困惑,因为一个集团也可以有一个所有者,也是一个用户.这就是我现在所处的位置:

class Group < ActiveRecord::Base
    has_and_belongs_to_many :users
    has_one :owner, :class_name => "User"
end

class User < ActiveRecord::Base
    has_and_belongs_to_many :groups
end
Run Code Online (Sandbox Code Playgroud)

Group表上当前有一个owner_id字段,但是column users.group_id does not exist当我尝试执行任何涉及的操作时,我收到PostgreSQL错误group.owner.我很丢失 - 关于在同一模型中表示多个关联的最佳方式的任何想法?

activerecord ruby-on-rails polymorphic-associations

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