2010-07-28 10 views
5

मैं अपने रेल 3 ऐप्स के साथ जेडटेबल का उपयोग करने की कोशिश कर रहा हूं। मैं कुछ फ़ील्ड इनलाइन संपादित करना चाहता हूं। वास्तव में यह मेरे ग्राहक पक्ष पर काम कर रहा है लेकिन डेटा मेरे ऐप में अपडेट नहीं किया गया है।जेडटेबल और रेल 3

क्या आप एक नज़र देख सकते हैं? अग्रिम में धन्यवाद!

मेरे विचार:

<dt>Overview :</dt> 
<dd class="edit_textfield" id="<%= @project.id %>" name="overview"><%= @project.overview %></dd> 

मेरी नियंत्रक:

def update 
    project = Project.find(params[:id]) 
    overview = params[:value] 
    project.save 
    render :text => params[:value] 
    end 

मेरी application.js:

$(".edit_textfield").each(function() {  
     $(this).editable('update', { 
      type : 'textarea', 
      cancel : 'Cancel', 
      submit : 'OK', 
      indicator : 'Saving...', 
      tooltip : 'Click to edit...', 
      rows  :  10, 
      method  :  "put", 
      submitdata : {id: $(this).attr('id'), name:$(this).attr('name') } 
     }); 
}); 

धन्यवाद kschaper करने के लिए, यह काम करता है।

लेकिन जब मैं अपने पृष्ठ में 2 फ़ील्ड के लिए जेडटेबल का उपयोग करता हूं और मैं उन्हें संपादित करता हूं, केवल एक ही सहेजा जाता है। रेल का मानना ​​है कि दूसरा मान 0

मुझे लगता है कि समस्या मेरी नियंत्रक से आते हैं:

def update 
    @project = Project.find(params[:id]) 
    @project.name = params[:name] 
    @project.overview = params[:overview] 
    @project.save 
    respond_to do |format| 
     format.js #{ render :text => params[:value] } 

    end 
    end 

आप एक सुराग है?

+1

पूरी तरह से असंबंधित, लेकिन jeditable एक भयानक नाम है;) – Nubsis

उत्तर

2

सिंहावलोकन परियोजना की एक विशेषता है? तो यह

@project.overview = params[:value] 
+0

धन्यवाद यह काम करता है !!!! यह इतना बुनियादी था ...: ओपी – Fabien

0

मैं रेलों का अध्ययन नहीं करता, लेकिन मुझे लगता है कि उत्पाद को '@' की आवश्यकता है।

इस तरह

:

def update 
    @project = Project.find(params[:id]) 
    overview = params[:value] 
    @project.save 
    render :text => params[:value] 
end 

शायद ...

+0

धन्यवाद बारिश, लेकिन यह अभी भी वही है ;-) – Fabien

0

FYI - आईडी विशेषताएँ एक पत्र से शुरू होनी चाहिए। आपके विचार में आपके पास सत्यापन मान्य नहीं होगा। आपको इसे अपने टेम्पलेट्स में कुछ टेक्स्ट के साथ प्रीपेड करना होगा और फिर इसे सबमिट करने के डेटा में भेजने से पहले इसे अपने application.js में बाहर निकालना होगा।