ACHTUNG. Das ist ein Archiv des alten forum.ruby-portal.de. Die aktuelle Mailingliste gibt es auf lists.ruby-lang.org/pipermail/ruby-de.

NOTICE. This is a ready-only copy of the old forum.ruby-portal.de. You can find the current mailing list at lists.ruby-lang.org/pipermail/ruby-de.

Die Programmiersprache Ruby

Blog|

Forum|

Wiki  


Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]

Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Angular + Rails und select-tags
BeitragVerfasst: 31 Okt 2014, 06:40 
Offline
Geselle

Registriert: 31 Okt 2008, 00:29
Beiträge: 143
Hallo nochmal,

ich schaff es einfach nicht in einer select-Liste innerhalb einer Tabelle innerhalb einer ng-repeat directive die verschachtelte resource als voreinstellung in der drop-down liste einzutragen. Auswählen und speichern funktioniert, abe ich möchte bei vorhandenen Werten schon gerne den Wert als selektiert drin stehen haben.

Hier das template


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

<tr ng-repeat="ticket in tickets">
<td>
<button class="btn btn-default" ng-click="update(ticket)" ><span class="glyphicon glyphicon-floppy-save"></span>Save</button>
<button class="btn btn-default" confirm-message="Are you sure?" confirm-click="delete(ticket)" ><span class="glyphicon glyphicon-remove"></span>Delete</button>
<button class="btn btn-default" ng-click="edit(ticket)" ><span class="glyphicon glyphicon-edit"></span>Edit</button>
</td>
<td>{{ticket.referenceNo}}</td>
<td>
<select class="form-control" ng-model="ticket.user" ng-options="user.username for user in users">
</select>
</td>
<td>{{ticket.customerName}} [<a ng-href="mailto:{{ticket.customerEmail}}" target="_blank">{{ticket.customerEmail}}</a>]</td>
<td>{{ticket.subject}}</td>
<td>{{ticket.message}}</td>
<td><select class="form-control" ng-model="ticket.status" ng-options="status for (status,id) in statuses"></td>
</tr>



Und hier der Controller


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54

angular.module('OnApp').controller("TicketCtrl", [ '$scope', '$location', '$window', 'Ticket', 'User', 'StatusList', 'ngDialog', ($scope, $location, $window, Ticket, User, StatusList, ngDialog)->

$scope.message=""
$scope.current_ticket=$window.current_ticket
$scope.tickets=[]
$scope.users=[]
$scope.statuses=[]
$scope.action=$window.ticket_action

console.log($window.current_ticket)
console.log($scope.current_ticket)

Ticket.query().then (tickets) ->
$scope.tickets = tickets

User.query().then (users) ->
$scope.users = users

StatusList.query().then (statuses) ->
$scope.statuses = statuses


$scope.create = (current_ticket) ->
result = new Ticket(current_ticket).create()
console.log(result)
if result?
$scope.message="Ticket created successfull. An confirmation email was send to your email address."
$scope.current_ticket=null
else
console.log("Error during ticket creation!")
$scope.message="Ticket creation failed! Try again."
$scope.current_ticket=null


$scope.delete = (current_ticket) -> current_ticket.delete().then (result) ->
if result
$scope.tickets.splice $scope.tickets.indexOf(current_ticket), 1
ngDialog.open({
template: 'dialogs/error.html',
scope: $scope,
className: 'ngdialog-theme-default',

})

$scope.update = (current_ticket) -> current_ticket.update().then (result) ->
if result
$scope.message="Ticket Updated."

$scope.edit = (current_ticket) ->
$location.path('/tickets/'+current_ticket.id)
$window.current_ticket=current_ticket
$window.ticket_action="edit"
])


Und hier noch die Services


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

angular.module('OnApp').factory('Ticket', ['railsResourceFactory', 'railsSerializer', 'User', (railsResourceFactory, railsSerializer, User) ->
resource = railsResourceFactory
url: '/api/tickets',
name: 'ticket',
serializer: railsSerializer ->
@resource 'user', 'User'

resource::user = -> User.get @userId

return resource
])

angular.module('OnApp').factory('User', ['railsResourceFactory', (railsResourceFactory) ->
return railsResourceFactory
url: '/api/users',
name: 'user'
])



Und zum beseren Verständnis noch ein bischen Ruby


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

create_table "tickets", force: true do |t|
t.string "status"
t.text "message"
t.string "subject"
t.integer "user_id"
t.string "customer_name"
t.string "customer_email"
t.string "reference_no"
t.datetime "created_at"
t.datetime "updated_at"
end

create_table "users", force: true do |t|
t.string "username"
t.string "password"
t.datetime "created_at"
t.datetime "updated_at"
end



Das sollte doch eigentliuch kein Problem darstellen. Ist ja etwas selbstverständliches (dachte ich)


Danke für jede Hilfe

David


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Angular + Rails und select-tags
BeitragVerfasst: 31 Okt 2014, 10:46 
Offline
Interpreter

Registriert: 10 Dez 2007, 17:37
Beiträge: 1906
Ich denke dein(e) Problem(e) sind in einer Angular-JS Gruppe besser aufgehoben. Das Problem ist nicht Rails/Ruby spezifisch.

_________________
Grüße
Jack


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach: