> Do you get a render_field request? What do you get as response for that
> request? You can see it with firebug. And please, post your controller, I
> don't
> know whether member_pay is an association, whether it uses a form_ui
I have models
def Member
belongs_to :membership
validates_presence_of :full_name
validates_presence_of :member_pay
end
def Membership
has_many :members
validates_presence_of :name
validates_presence_of :cost
end
Membership model has field called cost, which specifies cost for any
given membership it may contain (so far just 3 - full, partial,
associate).
member_pay is a numeric field in Member model. It uses no form_ui. Its
just a default text input field.
What I'm trying to have is to get this effect via drop-down menu
member = Member.new # or find existing
ms = Membership.find(whatever_id_selected_via_drop_down_meny)
# associate member with a particular membership from above
member.membership_id = ms.id
# this field gets populated from membership cost or can be edited to
reflect discounts or etc
member.member_pay = ms.cost # or ms.cost - discount
So for a given selection from the drop-down menu of Memberships
association, I would like it's cost value copied to a text input field
(called member_pay) which can be edited by hand if need be.
Yes I do get a render_field request as per below:
Processing ContractsController#render_field (for 192.168.10.10 at
2009-12-17 03:27:47) [GET]
Parameters: {"action"=>"render_field", "column"=>"membership",
"value"=>"4", "controller"=>"contracts"}
Membership Columns (2.0ms) SHOW FIELDS FROM `memberships`
Membership Load (0.5ms) SELECT * FROM `memberships` WHERE
(`memberships`.`id` = 4)
Rendering render_field
Rendered _form_attribute (6.8ms)
Completed in 163ms (View: 55, DB: 8) | 200 OK [http://192.168.10.10/
members/render_field?column=membership&value=4]
If I understand firebug correctly this is what I get in return:
try {
$("record_member_pay_").up("li").update("\n<dl class=\"\">\n <dt>\n
<label for=\"record_member_pay_\">Member Pay</label>\n </dt>\n <dd>\n
<input autocomplete=\"off\" class=\"member-pay-input text-input\" id=
\"record_member_pay_\" name=\"record[member_pay]\" size=\"30\" type=
\"text\" />\n <span class=\"description\"></span>\n </dd>\n</dl>");
} catch (e) {
alert("RJS error:\n\n" + e.toString());
alert("$(\"record_member_pay_\").up(\"li\").update(\"\\n<dl class=\\
\"\\\">\\n <dt>\\n <label for=\\\"record_member_pay_\\\">Member Pay</
label>\\n </dt>\\n <dd>\\n <input autocomplete=\\\"off\\\" class=\\
\"member-pay-input text-input\\\" id=\\\"record_member_pay_\\\" name=\\
\"record[member_pay]\\\" size=\\\"30\\\" type=\\\"text\\\" />\\n <span
class=\\\"description\\\"></span>\\n </dd>\\n</dl>\");");
throw e;
}
/* !eval(new String((this.transport.responseText || '');)) */
This tells me that the value attribute of the <input> tag does not get
set with value from Memberships.cost.
Thank you!
--
You received this message because you are subscribed to the Google Groups
"ActiveScaffold : Ruby on Rails plugin" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/activescaffold?hl=en.